Sdílet prostřednictvím


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

  • SByte, bajt – 256 možných hodnot nedílnou

  • 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.

= &lt; &gt;, &lt;&gt;,, &lt; =, a &gt; = 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)

Option Strict – příkaz

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

Další zdroje

Operátory (Visual Basic)