UInteger-gegevenstype
Bevat niet-ondertekende 32-bits gehele getallen (4 bytes) variërend van 0 tot en met 4.294.967.295.
Opmerkingen
Het UInteger
gegevenstype biedt de grootste niet-ondertekende waarde in de meest efficiënte gegevensbreedte.
De standaardwaarde is UInteger
0.
Letterlijke toewijzingen
U kunt een UInteger
variabele declareren en initialiseren door deze toe te wijzen aan een letterlijke waarde voor decimalen, een hexadecimale letterlijke waarde, een octale letterlijke waarde of (te beginnen met Visual Basic 2017). Als de letterlijke waarde van het gehele getal buiten het bereik valt UInteger
(dat wil gezegd, als het kleiner is dan UInt32.MinValue of groter is dan UInt32.MaxValue, treedt er een compilatiefout op.
In het volgende voorbeeld worden gehele getallen gelijk aan 3.000.000.000 die worden weergegeven als decimale, hexadecimale en binaire letterlijke waarden toegewezen aan UInteger
waarden.
Dim uintValue1 As UInteger = 3000000000ui
Console.WriteLine(uintValue1)
Dim uintValue2 As UInteger = &HB2D05E00ui
Console.WriteLine(uintValue2)
Dim uintValue3 As UInteger = &B1011_0010_1101_0000_0101_1110_0000_0000ui
Console.WriteLine(uintValue3)
' The example displays the following output:
' 3000000000
' 3000000000
' 3000000000
Notitie
U gebruikt het voorvoegsel &h
of &H
om een hexadecimale letterlijke waarde, het voorvoegsel of &B
om een binaire letterlijke waarde aan te geven, en het voorvoegsel &b
&o
of &O
om een octale letterlijke waarde aan te geven. Letterlijke decimalen hebben geen voorvoegsel.
Vanaf Visual Basic 2017 kunt u ook het onderstrepingsteken gebruiken, _
als scheidingsteken voor cijfers om de leesbaarheid te verbeteren, zoals in het volgende voorbeeld wordt weergegeven.
Dim uintValue1 As UInteger = 3_000_000_000ui
Console.WriteLine(uintValue1)
Dim uintValue2 As UInteger = &HB2D0_5E00ui
Console.WriteLine(uintValue2)
Dim uintValue3 As UInteger = &B1011_0010_1101_0000_0101_1110_0000_0000ui
Console.WriteLine(uintValue3)
' The example displays the following output:
' 3000000000
' 3000000000
' 3000000000
Vanaf Visual Basic 15.5 kunt u het onderstrepingsteken (_
) ook gebruiken als voorloopscheidingsteken tussen het voorvoegsel en de hexadecimale, binaire of octale cijfers. Voorbeeld:
Dim number As UInteger = &H_0F8C_0326
Als u het onderstrepingsteken wilt gebruiken als scheidingsteken voor voorloop, moet u het volgende element toevoegen aan het Visual Basic-project (*.vbproj)-bestand:
<PropertyGroup>
<LangVersion>15.5</LangVersion>
</PropertyGroup>
Zie De visual Basic-taalversie selecteren voor meer informatie.
Numerieke letterlijke waarden kunnen ook het UI
teken of ui
het type bevatten om het UInteger
gegevenstype aan te geven, zoals in het volgende voorbeeld wordt weergegeven.
Dim number = &H_0FAC_14D7ui
Programmeertips
De UInteger
gegevenstypen en Integer
gegevenstypen bieden optimale prestaties op een 32-bits processor, omdat de kleinere typen gehele getallen (UShort
, Short
Byte
, en SByte
) zelfs als ze minder bits gebruiken, meer tijd in beslag nemen om te laden, op te slaan en op te halen.
Negatieve getallen. Omdat
UInteger
dit een niet-ondertekend type is, kan het geen negatief getal vertegenwoordigen. Als u de unaire minteken -operator (-
) gebruikt voor een expressie die wordt geëvalueerd om te typenUInteger
, converteert Visual Basic de expressie eerst naarLong
.CLS-naleving. Het
UInteger
gegevenstype maakt geen deel uit van de Common Language Specification (CLS), dus cls-compatibele code kan geen onderdeel verbruiken dat het gebruikt.Overwegingen voor interoperabiliteit. Als u verbinding maakt met onderdelen die niet zijn geschreven voor .NET Framework, bijvoorbeeld Automation- of COM-objecten, moet u er rekening mee houden dat typen zoals
uint
een andere gegevensbreedte (16 bits) in andere omgevingen kunnen hebben. Als u een 16-bits argument doorgeeft aan een dergelijk onderdeel, declareert u dit alsUShort
in plaats vanUInteger
in uw beheerde Visual Basic-code.Verbreding. Het
UInteger
gegevenstype wordt breder naarLong
,ULong
,Decimal
enSingle
.Double
Dit betekent dat u kunt converterenUInteger
naar een van deze typen zonder dat er een System.OverflowException fout optreedt.Typ tekens. Als u de letterlijke typetekens
UI
toevoegt aan een letterlijke tekens, wordt dit gedwongen aan hetUInteger
gegevenstype.UInteger
heeft geen id-type teken.Type framework. Het bijbehorende type in .NET Framework is de System.UInt32 structuur.