Apa itu UBound dan LBound dalam Visual Basic?

Gunakan fungsi UBound dan LBound untuk menentukan ukuran array.

Definisi

Fungsi UBound mengembalikan nilai dari subscript tertinggi yang tersedia untuk dimensi array yang ditunjukkan. Fungsi LBound melakukan sebaliknya, karena mengembalikan subscript terendah yang tersedia untuk dimensi array yang ditunjukkan. Nilai kembalian dari kedua fungsi adalah tipe data bilangan bulat. Jika array hanya memiliki satu elemen, UBound mengembalikan 0. Fungsi LBound selalu mengembalikan 0 selama array telah diinisialisasi, bahkan jika ia tidak memiliki elemen.

Dimensi pengaturan

Ketika sebuah array menggunakan indeks, dikatakan sebagai satu dimensi. Array multidimensi menggunakan lebih dari satu indeks atau subskrip. Anda juga dapat menyatakan apa yang disebut pengaturan pengaturan atau pengaturan yang tidak teratur. Ini bisa satu dimensi atau multidimensi serta elemen yang ditentukan. Misalnya, jika Anda menyatakan array dua dimensi bulan, satu subskrip mewakili bulan dan hari lainnya. Bulan-bulan memiliki jumlah hari yang berbeda, oleh karena itu elemen Anda tidak akan membentuk pengaturan persegi empat dua dimensi. Dalam VB array akan dideklarasikan seperti yang ditunjukkan di bawah ini:

Dim monthsArray (11, 30) As String

Penentuan dimensi maksimum

Subskrip mulai dari 0 untuk setiap pengaturan dan maksimum ditentukan oleh nomor yang Anda tulis dalam larik untuk setiap subskrip. Anda dapat mendeklarasikan array multidimensi dari jenis Byte menggunakan sintaks berikut:

Dim a (200, 10, 2) As Byte

Anda bisa mendapatkan panjang array untuk setiap subskrip menggunakan fungsi UBound. Sintaks "Ubound (a, 1)" [tanpa tanda kutip] mengembalikan nilai "200". Ubah posisi subskrip menjadi "2" dan hasilnya akan menjadi "10". Untuk mendapatkan ukuran subscript ketiga, ubah posisi ke "3".

Penentuan dimensi minimum

Dalam array, subscript selalu diawali dengan 0, oleh karena itu subscript terkecil yang tersedia untuk setiap dimensi selalu 0. Deklarasikan jenis byte Byte berikutnya dan gunakan fungsi LBound untuk mendapatkan subscript terkecil yang tersedia:

Dim a (200, 10, 2) As Byte

Untuk menentukan nilai terkecil dari subscript pertama, gunakan sintaks (LBound (a, 1) "[tanpa tanda kutip] untuk mendapatkan 0. Akibatnya, ubah subskrip menjadi" 2 "dan fungsi juga akan mengembalikan" 0 ". ubah subskrip ke "3" dan nilai yang dikembalikan akan tetap "0".