Datové typy výsledků operátoru (Visual Basic)
Visual BasicUrčuje typ dat výsledek operace založené na datových typů operandy.V některých případech to může být datový typ s větší rozsah než buď operand.
Typ oblasti dat.
Rozsahy příslušných datových typů v pořadí od nejmenšího po největší, jsou následující:
Boolean – dvou možných hodnot
Krátké, UShort – 65 536 (6.5... E + 4) možných hodnot nedílnou
Celé číslo, UInteger – 4 294 967 296 (4.2... E + 9) možných hodnot nedílnou
Dlouhý, ULong – 18,446,744,073,709,551,615 (1.8... E + 19) možných hodnot nedílnou
Desetinné – 1.5... E + 29 nedílnou hodnot, maximální rozsah 7.9... E + 28 (absolutní hodnota)
Jeden – maximální rozsah 3.4... E + 38 (absolutní hodnota)
Dvojité – maximální rozsah 1.7... E + 308 (absolutní hodnota)
Další informace o Visual Basic typy dat, viz Souhrn datových typů (Visual Basic).
Pokud je vyhodnocen jako operand nic, Visual Basic aritmetické operátory považováno nula.
Aritmetický desítkové
Všimněte si, že desetinné je typ dat ani s plovoucí desetinnou čárkou ani celé číslo.
If either operand of a +, –, *, /, or Mod operation is Decimal and the other is not Single or Double, Visual Basic widens the other operand to Decimal.Provádí operace v Decimal, a výsledek datový typ je Decimal.
Aritmetice
Visual Basicprovede většinu aritmetické operace s plovoucí desetinnou čárkou v dvojité, což je nejúčinnější data zadejte pro tyto operace.Však pokud jeden operand je jednu a ostatní není Double, Visual Basic provádí operaci v Single.Ji rozšiřuje operandem jako nezbytné pro správný typ dat před operací a výsledek má datového typu.
/ a ^ operátory
/ Operátor je definována pouze pro desetinné, jednu, a dvojité datové typy.Visual Basicrozšiřuje operandem jako nezbytné pro správný typ dat před operace a výsledek má datového typu.
Následující tabulka obsahuje datové typy pro výsledek / operátor.Poznámka: Tato tabulka je symetrické; pro danou kombinaci typů dat operand je typu dat výsledek stejné bez ohledu na pořadí operandy.
Decimal |
Single |
Double |
Libovolný typ integer |
|
Decimal |
Desetinné číslo |
Jednoduché |
Double |
Desetinné číslo |
Single |
Jednoduché |
Jednoduché |
Double |
Jednoduché |
Double |
Double |
Double |
Double |
Double |
Libovolný typ integer |
Desetinné číslo |
Jednoduché |
Double |
Double |
^ Operátor je definována pouze Double datového typu.Visual Basicrozšiřuje operandem jako nezbytné Double před operace a typ dat je vždy výsledek Double.
Aritmetický celé číslo
Typ dat celé číslo operace výsledek závisí na datové typy operandy.Obecně Visual Basic datový typ výsledku používá následující zásady:
Pokud oba operandy binární operátor mít stejný typ dat má výsledek datového typu.Výjimka se Boolean, které bude muset Short.
Pokud nepodepsané operand součástí s podpisem operand, výsledek má podepsané typu s alespoň tak velký rozsah jako buď operand.
Jinak výsledek má obvykle větší ze dvou typů dat operand.
Všimněte si, že výsledek typu dat nemusí být stejná jako typ dat buď operand.
[!POZNÁMKA]
Výsledný datový typ není vždy dostatečně velký pro všechny možné hodnoty vyplývající z operace.OverflowException Výjimky může dojít, pokud hodnota je příliš velká pro datový typ výsledku.
Unární + a – operátory
Následující tabulka uvádí výsledek datové typy pro dva unární operátory, + a –.
Boolean |
SByte |
Byte |
Short |
UShort |
Integer |
UInteger |
Long |
ULong |
|
Unární+ |
Short |
SByte |
Byte |
Short |
UShort |
Integer |
UInteger |
Dlouhá |
ULong |
Unární– |
Short |
SByte |
Short |
Short |
Integer |
Integer |
Dlouhá |
Dlouhá |
Desetinné číslo |
<< a >> Operátory
Následující tabulka uvádí výsledek datové typy pro dva operátory bit shift << a >>.Visual BasicUnární operátor na levý operand (vzorek bitové posunutí) považovány za každý bit shift operátor.
Boolean |
SByte |
Byte |
Short |
UShort |
Integer |
UInteger |
Long |
ULong |
|
<<, >> |
Short |
SByte |
Byte |
Short |
UShort |
Integer |
UInteger |
Dlouhá |
ULong |
Pokud je levý operand Decimal, Single, Double, nebo String, Visual Basic se pokusí převést na Long před operace a výsledek je typ dat Long.Musí být pravý operand (počet bitů na jednotlivých pozicích posun) Integer nebo typ, který rozšiřuje na Integer.
Binární +, -, * a Mod operátory
Následující tabulka obsahuje datové typy pro binární výsledek + a – operátory a * a Mod operátory.Poznámka: Tato tabulka je symetrické; pro danou kombinaci typů dat operand je typu dat výsledek stejné bez ohledu na pořadí operandy.
Boolean |
SByte |
Byte |
Short |
UShort |
Integer |
UInteger |
Long |
ULong |
|
Boolean |
Short |
SByte |
Short |
Short |
Integer |
Integer |
Dlouhá |
Dlouhá |
Desetinné číslo |
SByte |
SByte |
SByte |
Short |
Short |
Integer |
Integer |
Dlouhá |
Dlouhá |
Desetinné číslo |
Byte |
Short |
Short |
Byte |
Short |
UShort |
Integer |
UInteger |
Dlouhá |
ULong |
Short |
Short |
Short |
Short |
Short |
Integer |
Integer |
Dlouhá |
Dlouhá |
Desetinné číslo |
UShort |
Integer |
Integer |
UShort |
Integer |
UShort |
Integer |
UInteger |
Dlouhá |
ULong |
Integer |
Integer |
Integer |
Integer |
Integer |
Integer |
Integer |
Dlouhá |
Dlouhá |
Desetinné číslo |
UInteger |
Dlouhá |
Dlouhá |
UInteger |
Dlouhá |
UInteger |
Dlouhá |
UInteger |
Dlouhá |
ULong |
Long |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Desetinné číslo |
ULong |
Desetinné číslo |
Desetinné číslo |
ULong |
Desetinné číslo |
ULong |
Desetinné číslo |
ULong |
Desetinné číslo |
ULong |
\ Operátor
Následující tabulka obsahuje datové typy pro výsledek \ operátor.Poznámka: Tato tabulka je symetrické; pro danou kombinaci typů dat operand je typu dat výsledek stejné bez ohledu na pořadí operandy.
Boolean |
SByte |
Byte |
Short |
UShort |
Integer |
UInteger |
Long |
ULong |
|
Boolean |
Short |
SByte |
Short |
Short |
Integer |
Integer |
Dlouhá |
Dlouhá |
Dlouhá |
SByte |
SByte |
SByte |
Short |
Short |
Integer |
Integer |
Dlouhá |
Dlouhá |
Dlouhá |
Byte |
Short |
Short |
Byte |
Short |
UShort |
Integer |
UInteger |
Dlouhá |
ULong |
Short |
Short |
Short |
Short |
Short |
Integer |
Integer |
Dlouhá |
Dlouhá |
Dlouhá |
UShort |
Integer |
Integer |
UShort |
Integer |
UShort |
Integer |
UInteger |
Dlouhá |
ULong |
Integer |
Integer |
Integer |
Integer |
Integer |
Integer |
Integer |
Dlouhá |
Dlouhá |
Dlouhá |
UInteger |
Dlouhá |
Dlouhá |
UInteger |
Dlouhá |
UInteger |
Dlouhá |
UInteger |
Dlouhá |
ULong |
Long |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
ULong |
Dlouhá |
Dlouhá |
ULong |
Dlouhá |
ULong |
Dlouhá |
ULong |
Dlouhá |
ULong |
Pokud operand buď \ operátor je desetinné, jeden, nebo dvojité, Visual Basic se pokusí převést na dlouhé před operace a výsledek je typ dat Long.
Relační a bitové porovnání
The result data type of a relational operation (=, <>, <, >, <=, >=) is always BooleanBoolean – datový typ (Visual Basic).The same is true for logical operations (And, AndAlso, Not, Or, OrElse, Xor) on Boolean operands.
Výsledný datový typ bitové logické operace závisí na datové typy operandy.Všimněte si, že AndAlso a OrElse jsou definovány pouze pro Boolean, a Visual Basic převede operandem jako nezbytné Boolean před provedením operace.
= < >, <>,, < =, a > = operátory
Pokud jsou oba operandy Boolean, Visual Basic považuje za True být menší než False.Jestliže číselná hodnota se porovná se String, Visual Basic se pokusí převést String na Double před operací.A Char nebo Date operand lze porovnat pouze s jiným operand stejného datového typu.Výsledný datový typ je vždy Boolean.
Bitový operátor Not operátor
Následující tabulka obsahuje datové typy bitové výsledek Not operátor.
Boolean |
SByte |
Byte |
Short |
UShort |
Integer |
UInteger |
Long |
ULong |
|
Not |
Logická |
SByte |
Byte |
Short |
UShort |
Integer |
UInteger |
Dlouhá |
ULong |
Pokud operand je Decimal, Single, Double, nebo String, Visual Basic se pokusí převést na Long před operace a výsledek je typ dat Long.
Bitové A, nebo a operátory Xor
Následující tabulka obsahuje datové typy bitové výsledek And, Or, a Xor operátory.Poznámka: Tato tabulka je symetrické; pro danou kombinaci typů dat operand je typu dat výsledek stejné bez ohledu na pořadí operandy.
Boolean |
SByte |
Byte |
Short |
UShort |
Integer |
UInteger |
Long |
ULong |
|
Boolean |
Logická |
SByte |
Short |
Short |
Integer |
Integer |
Dlouhá |
Dlouhá |
Dlouhá |
SByte |
SByte |
SByte |
Short |
Short |
Integer |
Integer |
Dlouhá |
Dlouhá |
Dlouhá |
Byte |
Short |
Short |
Byte |
Short |
UShort |
Integer |
UInteger |
Dlouhá |
ULong |
Short |
Short |
Short |
Short |
Short |
Integer |
Integer |
Dlouhá |
Dlouhá |
Dlouhá |
UShort |
Integer |
Integer |
UShort |
Integer |
UShort |
Integer |
UInteger |
Dlouhá |
ULong |
Integer |
Integer |
Integer |
Integer |
Integer |
Integer |
Integer |
Dlouhá |
Dlouhá |
Dlouhá |
UInteger |
Dlouhá |
Dlouhá |
UInteger |
Dlouhá |
UInteger |
Dlouhá |
UInteger |
Dlouhá |
ULong |
Long |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
Dlouhá |
ULong |
Dlouhá |
Dlouhá |
ULong |
Dlouhá |
ULong |
Dlouhá |
ULong |
Dlouhá |
ULong |
Pokud operand je Decimal, Single, Double, nebo String, Visual Basic se pokusí převést na Long před operace a výsledek dat typ je stejný jako v případě, že operand bylo již Long.
Různé operátory
& Operátor je definována pouze pro zřetězení String operandy.Visual BasicPřevede operandem jako nezbytné String před operace a typ dat je vždy výsledek String.Pro účely & operátora, všechny převody na String , jsou považovány za rozšíření, i když Option Strict je On.
Is a IsNot hospodářských subjektů vyžadovat oba operandy typu odkaz.The TypeOf...Is výraz vyžaduje, aby první operand typu odkaz a druhým operandem název datového typu.Ve všech těchto případech výsledek dat je typ Boolean.
Like Operátor je definována pouze pro porovnávání vzorků z String operandy.Visual BasicPřevede operandem jako nezbytné String před operací.Výsledný datový typ je vždy Boolean.
Viz také
Referenční dokumentace
Souhrn datových typů (Visual Basic)
Priorita operátorů v jazyce Visual Basic
Operátory uvedené podle funkce (Visual Basic)
Aritmetické operátory (Visual Basic)
Operátory porovnání (Visual Basic)
Koncepty
Operátory a výrazy v jazyce Visual Basic
Aritmetické operátory v jazyce Visual Basic
Operátory porovnání v jazyce Visual Basic