21 April 2014

VB.NET: Arrays


Array merupakan struktur data dasar dalam berbagai bahasa pemrograman, termasuk visual basic.
Array menyimpan kumpulan data/object bertipe sama.
Masing-masing elemen memiliki nomor yang menyatakan posisi/urutan.
Urutan dimulai dari 0 (lower bound) sampai nilai urutan tertentu (upper bound)

Berikut ini beberapa contoh cara mendeklarasikan array 1 dimensi

'Pendeklarasian Implicit: Tanpa ukuran (size) awal, tanpa nilai awal
Dim urutan() As Integer

'Pendeklarasian Explicit: Tanpa ukuran (size) awal, tanpa nilai awal
Dim urutan() As Integer = New Integer() {}

'Pendeklarasian Implicit: Dengan ukuran(size) awal, tanpa nilai awal
Dim urutan(6) As Integer

'Pendeklarasian Explicit: Dengan ukuran(size) awal, tanpa nilai awal
Dim urutan() As Integer = New Integer(6) {}

'Pendeklarasian Implicit: Ukuran awal tersirat dengan nilai awal
Dim urutan() As Integer = {1, 2, 3, 4, 5, 6, 7}

'Pendeklarasian Explicit: Dengan ukuran awal dan nilai awal
Dim urutan() As Integer = New Integer(6) {1, 2, 3, 4, 5, 6, 7}


Deklarasi array dapat dilakukan secara Implicit ataupun Explicit.
Kita dapat menentukan atau tidak menentukan ukuran dimensi array di awal.
Kita juga dapat menentukan atau tidak menentukan nilai array di awal.

Jika dalam VB6 programmer dapat menentukan lower bound dan upper bound, di .NET semua lower bound array visual basic dimulai dari nol (0).

Contoh:
Dim intArray(7) As Integer

Contoh diatas mendeklarasikan array dengen 8 elemen, bernomor 0 sampai 7.

Array bisa memiliki beberapa dimensi. Berikut ini contoh cara mendeklarasikannya:

Dim strArray(,) As String = _
    {{"1", "2", "3"}, {"Satu", "Dua", "Tiga"}}

strArray(1, 1) --> bernilai "Dua"
strArray(0, 2) --> bernilai "3"

Upper bound array bisa diubah dengan menggunakan keyword ReDim. Tapi jumlah dimensi array tidak dapat diubah.

    ReDim [Preserve] arrayName(newUpperBound)

Preserve digunakan untuk mempertahankan nilai yang sudah diberikan sebelumnya.

Kita dapat mengetahui nomor upper bound dan lower bound menggunakan fungsi LBound dan UBound.

    Dim intArray(8) As Integer
    MsgBox(UBound(intArray))  ' akan menampilkan "8"


Karena lower bound selalu dimulai dari nol, maka fungsi LBound selalu menghasilkan nilai nol.

Click here if you like this article.


6 comments:

joe sath said...

cara untuk menampilkan hasil array nya dalam gridview gmn buk ?

rani irsan said...

klo nilai array nya dimasukin ke datatable dulu gimana?

joe sath said...

maksudnya array nya dimasukin dalam datatable,

trus datatable nya di panggil dalam gridview nya ya buk ?

rani irsan said...

yup, hehe

joe sath said...

maksih ya buk
:D

klo misalnya kykgini buk :
mempunyai array hari seperti ini :

Dim hari() As String = {"Senin", "Selasa", "Rabu", "Kamis", "Jum'at", "Sabtu", "Minggu"}

memanggil array ke dalam kombo box gridview menggunakan perulangan :
For i As Integer = 0 To hari.Length - 1
Column1.Items.Add(hari(i).ToString)
Column2.Items.Add(hari(i).ToString)
Column3.Items.Add(hari(i).ToString)
Column4.Items.Add(hari(i).ToString)
Column5.Items.Add(hari(i).ToString)
Column6.Items.Add(hari(i).ToString)
Column7.Items.Add(hari(i).ToString)
Next

//keterangan column1 - column7 = nama kombo box gridview

untuk membuat jika salah satu hari telah dipilih pada kombo box gridview,
misalnya kolom1 (combobox1) sudah memilih hari senin.
maka kolom 2 - 7 (combo box 2 - 7 ) tidak akan menampilakan hari senin lagi buk ,,

itu gmn buk ?
saya sudah mencoba menggunakan IF tetap tidak bisa buk

rani irsan said...

Joe Sath, maksud nya seperti ini bukan?
http://rani-irsan.blogspot.com/2015/06/vbnet-filter-combobox-list-di-row-yang.html