Jenis Data Numerik (Visual Basic)
Visual Basic menyediakan beberapa jenis data numerik untuk menghandel angka dalam berbagai representasi. Jenis integral hanya mewakili bilangan bulat (positif, negatif, dan nol), dan jenis nonintegral mewakili angka dengan bilangan bulat maupun pecahan.
Untuk tabel yang menampilkan perbandingan berdampingan dari jenis data Visual Basic, lihat Jenis Data.
Jenis Numerik Integral
Jenis data integral adalah yang hanya mewakili angka tanpa pecahan.
Jenis data integral yang ditandai adalah Jenis Data SByte (8-bit), Jenis Data Pendek (16-bit), Jenis Data Bilangan Bulat (32-bit), dan Jenis Data Panjang (64-bit). Jika variabel selalu menyimpan bilangan bulat daripada angka pecahan, nyatakan sebagai salah satu jenis ini.
Jenis integral yang tidak ditandai adalah Jenis Data Byte (8-bit), Jenis Data UShort (16-bit), Jenis Data UInteger (32-bit), dan Jenis Data ULong (64-bit). Jika variabel berisi data biner, atau data yang bersifat tidak diketahui, nyatakan sebagai salah satu jenis ini.
Performa
Operasi aritmetika berjalan lebih cepat dengan jenis integral daripada dengan jenis data lainnya. Ia berjalan paling cepat dengan jenis Integer
dan UInteger
dalam Visual Basic.
Bilangan Bulat Besar
Jika Anda perlu mempertahankan bilangan bulat yang lebih besar dari yang dapat dipertahankan oleh jenis data Integer
, Anda dapat menggunakan jenis data Long
sebagai gantinya. variabel Long
dapat mempertahankan angka dari -9.223.372.036.854.775.808 hingga 9.223.372.036.854.775.807. Operasi dengan Long
sedikit lebih lambat daripada dengan Integer
.
Jika Anda memerlukan nilai yang lebih besar, Anda dapat menggunakan Jenis Data Desimal. Anda dapat mempertahankan angka dari -79.228.162.514.264.337.593.543.950.335 hingga 79,228.162.514.264.337.593.543.950.335 dalam variabel Decimal
jika Anda tidak menggunakan angka desimal berapa pun. Akan tetapi, operasi dengan angka Decimal
jauh lebih lambat daripada dengan jenis data numerik lainnya.
Bilangan Bulat Kecil
Jika Anda tidak memerlukan rentang penuh dari jenis data Integer
, Anda dapat menggunakan jenis data Short
, yang dapat mempertahankan bilangan bulat dari -32.768 hingga 32.767. Untuk rentang bilangan bulat terkecil, jenis data SByte
mempertahankan bilangan bulat dari -128 hingga 127. Jika Anda memiliki sejumlah besar variabel yang mempertahankan bilangan bulat kecil, terkadang runtime bahasa umum dapat menyimpan variabel Short
dan SByte
Anda secara lebih efisien dan menghemat konsumsi memori. Akan tetapi, operasi dengan Short
dan SByte
agak lebih lambat daripada dengan Integer
.
Bilangan Bulat Tidak Ditandai
Jika Anda tahu bahwa variabel Anda tidak pernah perlu mempertahankan angka negatif, Anda dapat menggunakan jenis tidak ditandaiByte
, UShort
, UInteger
, dan ULong
. Masing-masing jenis data ini dapat mempertahankan bilangan bulat positif dua kali lebih besar dari jenis ditandai yang sesuai (SByte
, Short
, Integer
, dan Long
). Dalam hal performa, setiap jenis tidak ditandai sama persis efisiennya dengan jenis ditandai yang sesuai. Secara khusus, UInteger
berbagi dengan Integer
luar biasa karena menjadi yang paling efisien dari semua jenis data numerik dasar.
Jenis Numerik Nonintegral
Jenis data nonintegral adalah yang mewakili angka dengan bilangan bulat maupun pecahan.
Jenis data numerik nonintegral adalah Decimal
(poin tetap 128-bit), Jenis Data Tunggal (poin mengambang 32-bit), dan Jenis Data Ganda (poin mengambang 64-bit). Semuanya merupakan jenis ditandai. Jika variabel dapat berisi pecahan, nyatakan sebagai salah satu jenis ini.
Decimal
bukan tipe data titik-mengambang. angka Decimal
memiliki nilai bilangan bulat biner dan faktor penskalaan bilangan bulat yang menentukan bagian nilai apa yang berupa pecahan desimal.
Anda dapat menggunakan variabel Decimal
untuk nilai uang. Keuntungannya adalah presisi nilai tersebut. Jenis data Double
berjalan lebih cepat dan membutuhkan lebih sedikit memori, tetapi berisiko akan kesalahan pembulatan. Jenis data Decimal
mempertahankan akurasi lengkap hingga 28 angka desimal.
Angka poin-mengambang (Single
dan Double
) memiliki rentang yang lebih besar daripada angka Decimal
tetapi dapat berisiko akan kesalahan pembulatan. Jenis poin mengambang mendukung lebih sedikit digit yang signifikan daripada Decimal
tetapi dapat mewakili nilai dengan besaran yang lebih besar.
Nilai angka nonintegral dapat dinyatakan sebagai mmmEeee, di mana mmm adalah mantissa (digit yang signifikan) dan eee adalah eksponen (kekuatan sebesar 10). Nilai positif tertinggi dari jenis nonintegral adalah 7,9228162514264337593543950335E+28 untuk Decimal
, 3,4028235E+38 untuk Single
, dan 1,79769313486231570E+308 untuk Double
.
Performa
Double
paling efisien untuk jenis data pecahan, karena prosesor pada platform saat ini melakukan operasi poin-mengambang dalam presisi ganda. Namun, operasi dengan Double
tidak secepat dengan jenis integral seperti Integer
.
Besaran Kecil
Untuk angka dengan besaran sekecil mungkin (paling mendekati 0), variabel Double
dapat mempertahankan angka sekecil -4,94065645841246544E-324 untuk nilai negatif dan 4,94065645841246544E-324 untuk nilai positif.
Angka Pecahan Kecil
Jika Anda tidak memerlukan rentang jenis data Double
lengkap, Anda dapat menggunakan jenis data Single
, yang dapat mempertahankan angka poin-mengambang dari -3,4028235E+38 hingga 3,4028235E+38. Besaran terkecil untuk variabel Single
adalah -1,401298E-45 untuk nilai negatif dan 1,401298E-45 untuk nilai positif. Jika Anda memiliki variabel dengan jumlah yang sangat besar yang mempertahankan angka poin-mengambang kecil, terkadang runtime bahasa umum dapat menyimpan variabel Single
Anda secara lebih efisien dan menghemat konsumsi memori.