Ganzzahliger Datentyp (Visual Basic)

Speichert 32-Bit-(4-Byte-)Ganzzahlen mit Vorzeichen, deren Werte sich im Bereich von -2.147.483.648 bis einschließlich 2.147.483.647 bewegen.

Bemerkungen

Der Integer-Datentyp bietet in Verbindung mit einem 32-Bit-Prozessor eine optimale Leistung. Die anderen ganzzahligen Typen werden langsamer in den Arbeitsspeicher geladen und im Arbeitsspeicher gespeichert bzw. langsamer aus dem Arbeitsspeicher geladen.

Der Standardwert von Integer lautet 0.

Literalzuweisungen

Sie können eine Variable deklarieren und initialisieren, indem Sie ihr ein Dezimalliteral, ein Hexadezimalliteral, ein oktales Literal oder (ab Visual Basic 2017) ein binäres Literal Integer zuweisen. Wenn Sich das Ganzzahlliteral außerhalb des Bereichs von Integer befindet – sprich, wenn es kleiner als Int32.MinValue oder größer als Int32.MaxValue ist – tritt ein Kompilierfehler auf.

Im folgenden Beispiel werden Ganzzahlen wie 90.946, die als dezimale, hexadezimale und binäre Literale dargestellt werden, den Integer-Werten zugewiesen.

Dim intValue1 As Integer = 90946
Console.WriteLine(intValue1)
Dim intValue2 As Integer = &H16342
Console.WriteLine(intValue2)

Dim intValue3 As Integer = &B0001_0110_0011_0100_0010
Console.WriteLine(intValue3)
' The example displays the following output:
'          90946
'          90946
'          90946

Hinweis

Sie verwenden das Präfix oder , um ein &h &H Hexadezimalliteral, das Präfix oder ein binäres Literal und das Präfix oder zu bezeichnen, um ein oktales &b &B Literal zu &o &O bezeichnen. Dezimale Literale haben kein Präfix.

Ab dem Visual Basic 2017 können Sie auch den Unterstrich als Zifferntrennzeichen verwenden, um die Lesbarkeit zu verbessern, wie im folgenden _ Beispiel gezeigt.

Dim intValue1 As Integer = 90_946
Console.WriteLine(intValue1)

Dim intValue2 As Integer = &H0001_6342
Console.WriteLine(intValue2)

Dim intValue3 As Integer = &B0001_0110_0011_0100_0010
Console.WriteLine(intValue3)
' The example displays the following output:
'          90946
'          90946
'          90946

Ab Visual Basic 15.5 können Sie auch den Unterstrich ( ) als führendes Trennzeichen zwischen dem Präfix und den hexadezimalen, binären oder oktalen Ziffern _ verwenden. Beispiel:

Dim number As Integer = &H_C305_F860

Um den Unterstrich als vorangestelltes Trennzeichen verwenden zu können, müssen Sie Ihrer Visual Basic-Projektdatei (*.vbproj) das folgende Element hinzufügen:

<PropertyGroup>
  <LangVersion>15.5</LangVersion>
</PropertyGroup>

Weitere Informationen finden Sie unter Auswählen der Visual Basic-Sprachversion.

Numerische Literale können auch das Typzeichen enthalten, um den Datentyp zu bezeichnen, wie I im folgenden Integer Beispiel gezeigt.

Dim number = &H_035826I

Programmiertipps

  • Interop-Überlegungen. Wenn Sie eine Interfacing mit Komponenten verwenden, die nicht für den .NET Framework geschrieben wurden, z. B. Automation- oder COM-Objekte, denken Sie daran, dass in anderen Umgebungen eine andere Datenbreite Integer (16 Bits) auf hat. Wenn Sie ein 16-Bit-Argument an eine solche Komponente übergeben, deklarieren Sie es im neuen Visual Basic-Code als Short und nicht als Integer.

  • Erweiterung. Der Integer-Datentyp wird zu Long, Decimal, Single oder Double erweitert. Dies bedeutet, dass Sie Integer in einen dieser Typen konvertieren können, ohne dass ein System.OverflowException-Fehler auftritt.

  • Geben Sie Zeichen ein. Durch Anhängen des Literaltypzeichens I an ein Literal wird der Integer-Datentyp erzwungen. Durch Anhängen des Typkennzeichens % an einen beliebigen Bezeichner wird für diesen ebenfalls der Integer-Datentyp erzwungen.

  • Framework-Typ. Der entsprechende Typ in .NET Framework ist die System.Int32-Struktur.

Bereich

Wenn Sie für eine Variable mit Ganzzahltyp eine Zahl festlegen, die außerhalb des Bereichs für diesen Typ liegt, tritt ein Fehler auf. Wenn Sie versuchen, sie auf einen Bruch festzulegen, wird die Zahl auf den nächsten ganzzahligen Wert auf- oder abgerundet. Wenn die Zahl zwei Ganzzahlwerten gleichermaßen nahe ist, wird der Wert auf die nächste gerade ganze Zahl gerundet. So werden Rundungsfehler reduziert, die sich beim einheitlichen Runden von in der Mitte liegenden Werten in nur eine Richtung ergeben. Der folgende Code zeigt Beispiele für eine Rundung.

' The valid range of an Integer variable is -2147483648 through +2147483647.  
Dim k As Integer  
' The following statement causes an error because the value is too large.  
k = 2147483648  
' The following statement sets k to 6.  
k = 5.9  
' The following statement sets k to 4  
k = 4.5  
' The following statement sets k to 6  
' Note, Visual Basic uses banker’s rounding (toward nearest even number)  
k = 5.5  

Siehe auch