共用方式為


/ 運算子 (Visual Basic)

兩數相除並傳回浮點結果。

expression1 / expression2

組件

  • expression1
    必要項。 任何數值運算式。

  • expression2
    必要項。 任何數值運算式。

支援類型

所有數字型別,包括不帶正負號和浮點型別,以及 Decimal。

結果

結果是 expression1 除以 expression2 的完整商數 (包括任何餘數)。

\ 運算子 (Visual Basic) 會傳回整數商數 (捨棄餘數)。

備註

結果的資料型別視運算元的型別而定。 下表顯示結果資料型別的決定方式。

運算元資料型別

結果資料型別

這兩個運算式都是整數類資料型別 (Integral Type) (SByteByteShortUShortIntegerUIntegerLongULong)

Double

一個運算式為 Single 資料型別,另一個不是 Double

Single

一個運算式為 Decimal 資料型別,另一個不是 SingleDouble

Decimal

任一運算式可以是 Double 資料型別

Double

在執行除法之前,會將任何整數數值運算式擴展成 Double。 如果將結果指派給整數類資料型別,則 Visual Basic 會嘗試將結果從 Double 轉換成該型別。 如果結果不適合該型別,則這會擲回例外狀況。 尤其,請參閱此說明網頁上「嘗試以零為除數」的部分。

如果 expression1 或 expression2 評估為 Nothing,即視為零。

嘗試以零為除數

如果 expression2 評估為零,則 / 運算子對於不同運算元資料型別會有不同的行為。 下表顯示可能的行為。

運算元資料型別

expression2 為零時的行為

浮點數 (Single 或 Double)

傳回無限大 (PositiveInfinityNegativeInfinity),如果 expression1 也是零,則傳回 NaN (非數字)

Decimal

擲回 DivideByZeroException

整數類 (帶正負號或不帶正負號)

嘗試轉換回整數類資料型別 (Integral Type) 會擲回 OverflowException,因為整數類資料型別無法接受 PositiveInfinityNegativeInfinityNaN

注意事項注意事項

/ 運算子可以「多載」,也就是,當運算元具備類別或結構的類型時,該類別或結構就可以重新定義其行為。如果您的程式碼在這種類別或結構上使用此運算子,就一定要先瞭解其重新定義的行為。如需詳細資訊,請參閱 運算子程序 (Visual Basic)

範例

這個範例會使用 / 運算子來執行浮點除法。 結果是兩個運算元的商數。

Dim resultValue As Double
resultValue = 10 / 4
resultValue = 10 / 3

上述範例中的運算式會傳回值 2.5 和 3.333333。 請注意,即使這兩個運算元都是整數常數,結果一律為浮點數 (Double)。

請參閱

參考

/= 運算子 (Visual Basic)

\ 運算子 (Visual Basic)

運算子結果的資料型別 (Visual Basic)

算術運算子 (Visual Basic)

Visual Basic 中的運算子優先順序

運算子 (依功能排列) (Visual Basic)

概念

Visual Basic 的算術運算子