Оператор / (Visual Basic)
Делит одно число на другое и возвращает результат с плавающей запятой.
expression1 / expression2
Части
expression1
Обязательный.Произвольное числовое выражение.expression2
Обязательный.Произвольное числовое выражение.
Поддерживаемые типы
Все числовые типы, в том числе беззнаковые, с плавающей запятой и Decimal.
Результат
Результатом является полное частное от деления expression1 на expression2, включая любой остаток.
Оператор \ (Visual Basic) возвращает целочисленное частное, без остатка.
Заметки
Тип данных результата зависит от типов операндов.В следующей таблице показано, как определяется тип данных результата.
Типы данных операндов |
Тип данных результата |
---|---|
Оба выражения являются целыми (SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong) |
Double |
Одно выражение является типом данных Single, а второе не является типом Double |
Single |
Одно выражение является типом данных Decimal, а второе не является типом Single или Double |
Decimal |
Какое-либо из выражений имеет тип данных Double |
Double |
Перед выполнением деления все целочисленные числовые выражения преобразуются в тип данных Double.Если присвоить результат переменной целочисленного типа данных, Visual Basic попытается преобразовать результат из Double в этот тип.Это может вызвать исключение, если результат не умещается в этом типе.В частности, см. "Попытка деления на 0" на этой странице справки.
Если expression1 или expression2 равны Nothing, оно интерпретируется как ноль.
Попытка деления на ноль
Если значением expression2 является ноль, оператор / работает по-разному для разных типов данных операнда.В следующей таблице показаны возможные результаты.
Типы данных операндов |
Поведение в случае равенства нулю expression2 |
---|---|
С плавающей запятой (Single или Double) |
Возвращает бесконечность (PositiveInfinity или NegativeInfinity) или NaN (не число), если expression1 также является нулем |
Decimal |
Вызывает DivideByZeroException |
Целочисленное (знаковое или беззнаковое) |
Попытка преобразования обратно в целочисленный тип вызывает OverflowException, так как целые типы не принимают PositiveInfinity, NegativeInfinity и NaN |
Примечание |
---|
Оператор / может быть перегружен; это означает, что класс или структура может переопределить его поведение, если операнд имеет тип соответствующего класса или структуры.Если в коде используется этот оператор для такого класса или структуры, убедитесь, что его переопределенное поведение вам понятно.Дополнительные сведения см. в разделе Процедуры операторов (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)