Аритметични оператори във Visual Basic Microsoft Docs

Аритметичните оператори се използват за извършване на много добре познати аритметични операции, включително изчисляване на числови стойности, представени от литерали, променливи, други изрази, извиквания на функции и свойства и константи. Също така при аритметичните оператори се разглеждат операторите за побитово изместване, които работят на ниво отделни битове на операндите и ги изместват наляво или надясно.

Аритметични операции

Можете да добавите две стойности в израз с помощта на оператора + оператор (Visual Basic) или да извадите едната от другата с помощта на оператора - оператор (Visual Basic), както е показано в следващия пример.

Отрицанието също използва оператора Operator - (Visual Basic), но само с един операнд, както е показано в следващия пример.

Умножението и делението използват съответно операторите Operator * (Visual Basic) и Operator / (Visual Basic), както е показано в следния пример.

Степенуването използва оператора ^ (Visual Basic), както е показано в следния пример.

Целочисленото деление се извършва с помощта на оператора \ (Visual Basic). Целочисленото деление връща частно, т.е. цяло число, представляващо колко пъти дивидентът се дели на делителя без остатък. Делителят и дивидентът трябва да са цели числа (SByte, Byte, Short, UShort, Integer, UInteger, Long и ULong), за да използвате този оператор. Всички други типове трябва първо да бъдат преобразувани в целочислен тип. По-долу е даден пример за целочислено деление.

Аритметичната операция деление с остатък се извършва с помощта на Mod Operator (Visual Basic). Този оператор връща остатъка след разделяне на дивидента на делителя цял брой пъти. Ако делител и дивидентса цели типове, върнатата стойност е цяло число. Ако и делителят, и дивидентът са типове с плаваща запетая, върнатата стойност също е променлива с плаваща запетая. Следният пример илюстрира това поведение.

Опит за деление на нула

Делението на нула дава различни резултати в зависимост от типовете данни. При целочислено деление (SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong), .NET Framework хвърля DivideByZeroException. За операции за деление с тип данни Decimal или Single, .NET Framework също хвърля DivideByZeroException.

Делението с плаваща запетая с помощта на типа данни Double не хвърля изключение и резултатът е член на класа, представляващ NaN, PositiveInfinity или NegativeInfinity, в зависимост от дивидента. Следната таблица обобщава различните резултати от опит за разделяне на стойност Double на нула.