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

Literale Zuweisungen

Sie können eine Integer-Variable deklarieren und initialisieren, indem Sie ihr ein Dezimalliteral, ein hexadezimales Literal, ein oktales Literal oder (ab Visual Basic 2017) ein binäres Literal 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

Verwenden Sie das Präfix &h oder &H zum Kennzeichnen eines hexadezimalen Literals, das Präfix &b oder &B zum Kennzeichnen eines binären Literals und das Präfix &o oder &O zum Kennzeichnen eines oktalen Literals. Dezimale Literale haben kein Präfix.

Ab Visual Basic 2017 können Sie zur besseren Lesbarkeit auch den Unterstrich (_) als Zifferntrennzeichen verwenden, wie im folgenden Beispiel veranschaulicht.

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 vorangestelltes Trennzeichen zwischen dem Präfix und en 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-Datei) 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 TypzeichenI enthalten, um den Integer-Datentyp anzugeben:

Dim number = &H_035826I

Programmiertipps

  • Interop-Überlegungen. Wenn Sie Komponenten anbinden, die nicht für .NET Framework geschrieben wurden (z. B. Automatisierungs- oder COM-Objekte), müssen Sie beachten, dass Integer in anderen Umgebungen eine andere Datenbreite hat (16 Bit). 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.

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