Bagikan melalui


Jenis Data UInteger

Menyimpan bilangan bulat 32-bit (4-byte) yang tidak ditandai berkisar antara 0 hingga 4.294.967.295.

Keterangan

Jenis data UInteger menyediakan nilai terbesar yang tidak ditandatangani dalam lebar data yang paling efisien.

Nilai default dari UInteger adalah 0.

Penetapan harfiah

Anda dapat mendeklarasikan dan menginisialisasi variabel UInteger dengan menetapkan harfiah desimal, harfiah heksadesimal, harfiah oktal, atau (dimulai pada Visual Basic 2017) harfiah biner. Jika harfiah bilangan bulat berada diluar rentang dari UInteger (maka, jika ia kurang dari UInt32.MinValue atau lebih dari UInt32.MaxValue, kesalahan kompilasi terjadi.

Dalam contoh berikut, bilangan bulat sama dengan 3.000.000.000 yang dinyatakan sebagai literal desimal, heksadesimal, dan biner ditetapkan ke nilai UInteger.

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

Catatan

Anda menggunakan awalan &h atau &H untuk menunjukkan harfiah heksadesimal, awalan &b atau &B untuk menunjukkan harfiah biner, dan awalan &o atau &O untuk menunjukkan harfiah oktal. Harfiah desimal tidak memiliki awalan.

Dimulai dari Visual Basic 2017, Anda juga dapat menggunakan karakter garis bawah, _, sebagai pemisah digit untuk meningkatkan keterbacaan, seperti yang ditunjukkan contoh berikut.

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

Dimulai dari Visual Basic 15.5, Anda juga dapat menggunakan karakter garis bawah (_) sebagai pemisah utama antara awalan dan digit heksadesimal, biner, atau oktal. Contohnya:

Dim number As UInteger = &H_0F8C_0326

Untuk menggunakan karakter garis bawah sebagai pemisah utama, Anda harus menambahkan elemen berikut ke file proyek Visual Basic (*.vbproj):

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

Untuk informasi selengkapnya, lihat Memilih versi bahasa Visual Basic.

Literal numerik juga dapat menyertakan UI karakter atau ui jenis untuk menunjukkan UInteger jenis data, seperti yang ditunjukkan contoh berikut.

Dim number = &H_0FAC_14D7ui

Tips pemrograman

Jenis data UInteger dan Integer memberikan performa optimal pada prosesor 32-bit, karena jenis bilangan bulat yang lebih kecil (UShort, Short, Byte, dan SByte), meskipun menggunakan lebih sedikit bit, butuh lebih banyak waktu untuk memuat, menyimpan, dan mengambil.

  • Angka Negatif. Karena UInteger merupakan jenis yang tidak ditandatangani, jenis tidak dapat mewakili angka negatif. Jika Anda menggunakan operator tunggal minus (-) pada ekspresi yang mengevaluasi untuk mengetik UInteger, Visual Basic mengonversi ekspresi menjadi Long terlebih dahulu.

  • Kepatuhan CLS. Jenis data UInteger bukan bagian dari Common Language Specification (CLS), sehingga kode yang mematuhi CLS tidak dapat memakai komponen yang menggunakannya.

  • Pertimbangan Interop. Apabila Anda berinteraksi dengan komponen yang tidak ditulis untuk .NET Framework, misalnya objek Automation atau COM, ingatlah bahwa jenis seperti uint memiliki lebar data yang berbeda (16 bit) di lingkungan lain. Jika Anda meneruskan argumen 16-bit ke komponen tersebut, nyatakan sebagai UShort alih-alih UInteger dalam kode Visual Basic terkelola Anda.

  • Pelebaran. Jenis data UInteger diperluas menjadi Long, ULong, Decimal, Single, dan Double. Ini berarti Anda dapat mengonversi UInteger ke salah satu jenis ini tanpa mengalami kesalahan System.OverflowException.

  • Ketik Karakter. Menambahkan karakter jenis literal UI ke literal memaksanya ke jenis data UInteger. UInteger tidak memiliki karakter jenis pengidentifikasi.

  • Jenis Kerangka. Jenis yang sesuai dalam .NET Framework adalah struktur System.UInt32.

Lihat juga