/ 运算符 (Visual Basic)
使两个数字相除,返回浮点结果。
语法
expression1 / expression2
组成部分
expression1
必需。 任何数值表达式。
expression2
必需。 任何数值表达式。
支持的类型
所有数值类型,包括无符号和浮点类型和 Decimal
。
结果
结果为 expression1
除以 expression2
的完整商,包括任何余数。
\ 运算符 (Visual Basic) 返回整数商,这会删除余数。
注解
结果的数据类型取决于操作数的类型。 下表显示了如何确定结果的数据类型。
操作数数据类型 | 结果数据类型 |
---|---|
这两个表达式都是整型数据类型(SByte、Byte、Short、UShort、Integer、UInteger、Long、ULong) | Double |
一个表达式是单一数据类型,另一个表达式不是 Double | Single |
一个表达式是十进制数据类型,另一个表达式不是单一型或 Double | Decimal |
其中一个表达式为 Double 数据类型 | Double |
在执行除法运算之前,所有整数数值表达式都将扩展到 Double
。 如果将结果赋给整数数据类型,Visual Basic 会尝试将结果从 Double
转换为该类型。 如果结果不适合该类型,这可能会引发异常。 具体而言,请参阅此帮助页上的“尝试被零除”。
如果 expression1
或 expression2
的计算结果为 Nothing,则将其视为零。
尝试除以零
如果 expression2
计算结果为零,则 /
运算符的行为不同于不同的操作数数据类型。 下表显示可能的行为。
操作数数据类型 | expression2 为零时的行为 |
---|---|
浮点(Single 或 Double ) |
如果 expression1 也为零,则返回无穷(PositiveInfinity 或 NegativeInfinity),或者 NaN(不是数字) |
Decimal |
引发 DivideByZeroException |
整数(有符号或无符号) | 尝试转换回整型类型会引发 OverflowException,因为整型类型不能接受 PositiveInfinity、NegativeInfinity 或 NaN |
注意
可重载 /
运算符,这意味着当操作数具有某一类或结构时,该类或结构可重新定义其行为。 如果你的代码在这种类或结构上使用此运算符,请确保了解其重新定义的行为。 有关详细信息,请参阅 Operator Procedures。
示例
此示例使用 /
运算符来执行浮点除法。 结果是两个操作数的乘积。
Dim resultValue As Double
resultValue = 10 / 4
resultValue = 10 / 3
前面的示例中的表达式返回值 2.5 和3.333333。 请注意,结果始终是浮点 (Double
),即使两个操作数都是整数常量。