/Operator (Visual Basic)
Delar upp två tal och returnerar ett flyttalsresultat.
Syntax
expression1 / expression2
Delar
expression1
Obligatoriska. Alla numeriska uttryck.
expression2
Obligatoriska. Alla numeriska uttryck.
Typer som stöds
Alla numeriska typer, inklusive de osignerade och flyttalstyperna och Decimal
.
Resultat
Resultatet är den fullständiga kvoten expression1
dividerat med expression2
, inklusive eventuella rester.
\- operatorn (Visual Basic) returnerar heltalskvoten, som släpper resten.
Kommentarer
Resultatets datatyp beror på typen av operander. I följande tabell visas hur datatypen för resultatet bestäms.
Datatyper för operand | Resultatdatatyp |
---|---|
Båda uttrycken är integrerade datatyper (SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong) | Double |
Ett uttryck är en enskild datatyp och det andra är inte en Dubbel | Single |
Ett uttryck är en decimaldatatyp och det andra är inte en enskild eller dubbel | Decimal |
Endera uttrycket är en dubbel datatyp | Double |
Innan divisionen utförs utvidgas alla numeriska uttryck till Double
. Om du tilldelar resultatet till en integrerad datatyp försöker Visual Basic konvertera resultatet från Double
till den typen. Detta kan utlösa ett undantag om resultatet inte får plats i den typen. I synnerhet se "Försök till division av noll" på den här hjälpsidan.
Om expression1
eller expression2
utvärderas till Ingenting behandlas det som noll.
Försök till division efter noll
Om expression2
utvärderas till noll fungerar operatorn /
annorlunda för olika typer av operander. I följande tabell visas möjliga beteenden.
Datatyper för operand | Beteende om expression2 är noll |
---|---|
Flyttal (Single eller Double ) |
Returnerar oändligheten (PositiveInfinity eller ), eller NaN (inte ett tal) om expression1 är NegativeInfinityockså noll |
Decimal |
Kastar DivideByZeroException |
Integral (signerad eller osignerad) | Försök att konvertera tillbaka till integraltypskast OverflowException eftersom integraltyper inte kan acceptera PositiveInfinity, NegativeInfinityeller NaN |
Kommentar
Operatorn /
kan överbelastas, vilket innebär att en klass eller struktur kan omdefiniera sitt beteende när en operande har den typen av klass eller struktur. Om din kod använder den här operatorn i en sådan klass eller struktur bör du se till att du förstår dess omdefinierade beteende. Mer information finns i Operatorprocedurer.
Exempel
I det här exemplet används operatorn /
för att utföra flyttalsdivision. Resultatet är kvoten för de två operanderna.
Dim resultValue As Double
resultValue = 10 / 4
resultValue = 10 / 3
Uttrycken i föregående exempel returnerar värdena 2.5 och 3.333333. Observera att resultatet alltid är flyttal (Double
), även om båda operanderna är heltalskonstanter.