0% menganggap dokumen ini bermanfaat (0 suara)
27 tayangan18 halaman

Pert 5 - Collection

Dokumen tersebut membahas penggunaan berbagai jenis koleksi data pada VB.NET seperti ArrayList, Stack, Queue, dan Array. Termasuk penjelasan fungsi-fungsi penting untuk menambahkan, menghapus, dan mengakses item pada setiap jenis koleksi data.
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
27 tayangan18 halaman

Pert 5 - Collection

Dokumen tersebut membahas penggunaan berbagai jenis koleksi data pada VB.NET seperti ArrayList, Stack, Queue, dan Array. Termasuk penjelasan fungsi-fungsi penting untuk menambahkan, menghapus, dan mengakses item pada setiap jenis koleksi data.
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 18

Pertemuan 5

Collection

Objektif :

1. Mahasiswa Mampu Memahami Penggunaan Arraylist Pada VB.NET


2. Mahasiswa Mampu Memahami Penggunaan Stack Pada VB.NET
3. Mahasiswa Mampu Memahami Penggunaan Queue Pada VB.NET
4. Mahasiswa Mampu Memahami Penggunaan Array Pada VB.NET
5. Mahasiswa Mampu Memahami Penggunaan Dynamic Array Pada VB.NET
6. Mahasiswa Mampu Memahami Penggunaan List Pada VB.NET

Page 65
COLLECTION

Class Collection adalah class-class yang digunakan untuk manajemen sturktur data,
mulai dari menyimpan data hingga proses indexing, sorting dan lain-lain.

Berikut adalah beberapa bagian dari Collection Class :

1. ArrayList
2. Stack
3. Queue
4. Array
5. Dynamic Array / Array Dinamis
6. List

ARRAYLIST

ArrayList adalah salah satu struktur data yang paling fleksibel dari VB.NET. Dengan
ArrayList Anda bisa menambahkan elemen ke dalam Array Dinamis yang Anda miliki dan
ArrayList ini menerima nilai kosong sebagai nilai yang valid dan mengizinkan elemen
dengan nilai sama atau duplikat. Class Collection memungkinkan Anda untuk mengakses
item baik menggunakan indeks numeric atau kunci String, tapi ArrayList memungkinkan
hanya indeks numeric. ArrayList fleksibel karena dapat menambahkan item tanpa informasi
ukuran.

Untuk menggunakan ArrayList, kita terlebih dahulu harus membuat variable yang
menjadi ArrayList. Deklarasi variable tidak harus disertai dengan ukuran dimensinya. Kita
cukup menuliskan perintah ArrayList seperti pada contoh dibawah ini :

Dim variable As New ArrayList

Secara default, ArrayList dapat menampung data sebanyak 16 elemen. Namun


demikian kita dapat memperbesar ukuran ArrayList maupun mempersempit ukurannya
dengan menggunakan property Capacity. Salah satu keunggulan property Capacity adalah
bahwa kita dapat memperbesar atau memperkecil ukuran ArrayList kapan saja sesuai
kebutuhan. Misalnya, kita mendefinisikan 1000 elemen dalam ArrayList dan kita hanya
menggunakan 100 elemen saja, maka akan terdapat 900 elemen yang tidak digunakan. Kita
dapat memperkecil ukuran ArrayList dengan perintah seperti dibawah ini :

Page 66
variable.Capacity = 100

Kita dapat menghitung jumlah item yang berada didalam ArrayList, seperti contoh dibawah
ini :

Dim variable As New ArrayList

variable.Capacity = 10
variable.Add("a")
variable.Add("b")
variable.Add("c")
variable.Add("d")
variable.Add("e")

Dim jumlah As Double = variable.Count


MsgBox(jumlah)

Pada kode program diatas output yang dihasilkan pada MsgBox adalah 5.

ArrayList memiliki sifat seperti Array tetapi perbedaan utamanya adalah ArrayList
bersifat dinamik dalam arti kita dapat memperbesar kapasitas secara otomatis apabila
diperlukan. ArrayList lebih unggul dari Array biasa karena selain dapat memperbesar
kapasitas secara otomatis, kita dapat menyisipkan dan menghapus elemen berdasarkan
valuenya.

Fungsi-fungsi penting pada Objek dalam ArrayList :

1. Add
Menambahkan items ke dalam ArrayList
Syntax : ArrayList.Add(item)

2. Insert
Memasukkan item ke posisi tertentu dalam sebuah ArrayList
Syntax : ArrayList.Insert(index,item)

3. Remove
Menghapus item dari ArrayList
Syntax : ArrayList.Remove(item)

Page 67
4. RemoveAt
Menghapus item dari posisi tertentu pada ArrayList
Syntax : ArrayList.RemoveAt(index)

5. Sort
Mengurutkan item dalam ArrayList
Syntax : ArrayList.Sort()

Sebagai contoh, buat sebuah form dan tambahkan sebuah Button pada form tersebut, seperti
gambar berikut :

Kemudian double klik pada Button tersebut dan tambahkan kode program berikut :
Dim i As Integer
Dim ArrayList As New ArrayList()
ArrayList.Add("Item5")
ArrayList.Add("Item3")
ArrayList.Add("Item4")
ArrayList.Add("Item1")
ArrayList.Add("Item2")
MsgBox("Shows Adde Items")
For i = 0 To ArrayList.Count - 1
MsgBox(ArrayList.Item(i))
Next
'menambahkan sebuah item
ArrayList.Insert(3, "Item6")

Page 68
'mengurutkan item dalam arraylist
ArrayList.Sort()

'menghapus sebuah item


ArrayList.Remove("Item1")

'menghapus item dari posisi tertentu


ArrayList.RemoveAt(3)

MsgBox("Shows final Items the ArrayList")


For i = 0 To ArrayList.Count - 1
MsgBox(ArrayList.Item(i))
Next

STACK (Tumpukan)

Stack adalah salah satu VB.NET Collection yang mudah digunakan. Stack
menggunakan operasi push dan pop, dimana kita bisa Push/menambahkan item ke dalam
stack dan Pop/mengeluarkannya. Stack menggunakan Algoritma Last In First Out (LIFO).
Item yang ditambahkan ke dalam stack dapat diambil kembali dengan urutan terbalik. Item
yang terakhir masuk adalah item yang pertama kali keluar, begitu juga sebaliknya.

Fungsi-fungsi yang digunakan pada stack :

1. Push
Menambahkan sebuah item ke dalam stack
Syntax : Stack.Push(Object)

2. Pop
Mengambil atau mengeluarkan item terakhir yang di masukkan ke dalam stack
Syntax : Stack.Pop()

3. Contains
Memeriksa apakah objek berada dalam stack
Syntax : Stack.Contains(Object)

Sebagai contoh, buat sebuah form dan tambahkan sebuah Button seperti gambar pada
contoh sebelumnya. Double klik pada Button tersebut kemudian tambahkan kode program
berikut :

Page 69
Dim Stack As New Stack
Stack.Push("Sun")
Stack.Push("Mon")
Stack.Push("Tue")
Stack.Push("Wed")
Stack.Push("Thu")
Stack.Push("Fri")
Stack.Push("Sat")
If Stack.Contains("Wed") Then
MsgBox(Stack.Pop())
Else
MsgBox("not exist")
End If

QUEUE (Antrian)

Queue adalah struktur data lain dari VB.NET Collection. Queue bekerja menggunakan
Algoritma First In First Out (FIFO). Item yang pertama kali masuk ke dalam Queue adalah
item yang pertama kali keluar dari Queue. Kita bisa menambahkan item ke dalam Queue
dan menghapus/mengeluarkan item dari Queue. Dan kita bisa melihat/mendapatkan item
pertama yang ditambahkan pada Queue.

Fungsi-fungsi yang digunakan pada Queue :

1. Enqueue
Menambahkan sebuah item ke dalam queue
Syntax : Stack.Enqueue(Object)

2. Dequeue
Mengambil atau mengeluarkan item pertama yang di masukkan ke dalam queue
Syntax : Stack.Dequeue()

3. Peek
Melihat atau mendapatkan item pada posisi pertama dalam queue
Syntax : Stack.Peek()

Sebagai contoh, buat sebuah form dan tambahkan sebuah Button seperti gambar pada
contoh sebelumnya. Double klik pada Button tersebut kemudian tambahkan kode program
berikut :

Page 70
Dim Queue As New Queue
Queue.Enqueue("Sun")
Queue.Enqueue("Mon")
Queue.Enqueue("Tue")
Queue.Enqueue("Wed")
Queue.Enqueue("Thu")
Queue.Enqueue("fri")
Queue.Enqueue("Sat")
MsgBox(Queue.Dequeue())
MsgBox(Queue.Peek())
If Queue.Contains("Sun") Then
MsgBox("Contains Sun ")
Else
MsgBox("Not Contains Sun ")
End If

ARRAY

Array digunakan untuk menyimpan data yang memiliki tipe data yang sama sebagai
satu unit tersendiri. Data di dalam Array dapat di akses sesuai dengan index yang
ditentukan dan kita dapat menginisialisasikan Array dengan data. Kita dapat mengakses
elemen di dalam Array dengan menggunakan index numerik. Index pada Array dimulai
dari 0. Data pertama pada Array adalah data dengan index 0.

Variable Array merupakan variable yang dapat menampung banyak data, tetapi jenis
datanya harus mempunyai tipe data yang sama. Untuk membedakan satu data dengan yang
lain, variable Array diberi indeks. Array digunakan karena variable Array menggunakan
memori lebih sedikit dibandingkan dengan variable biasa. Variable Array juga menyimpan
data lebih efisien.

Ada beberapa cara untuk mendeklarasikan dan menginisialisasi variable Array, antara lain :

• Mendeklarasikan variable Array langsung menentukan batas atas Array

Page 71
Bentuk umum : Dim <nama_var_array> (<batas atas)> As Integer

Dim Gaji(100) As Integer

Keterangan :

Mendeklarasikan variable Array dengan nama Gaji sebanyak 100 elemen (data)
dengan tipe data Integer. Indeks dimulai dari 0-99.

• Mendeklarasikan Array tanpa batas atas Array

Bentuk umum : Dim <nama_var_array>() As <Tipe_Data>

Dim Gaji As Integer

Keterangan :

Medeklarasikan variable Array dengan nama Gaji dan tipe data Integer

• Medeklarasikan variable Array dengan kata kunci New


Variable Array juga dianggap object dalam pemrograman visual basic sehingga
pada saat pendeklarasiannya dapat menggunakan kata kunci New

Bentuk umum 1 :

Dim <nama_var> () As <Tipe_Data>()=New <Tipe_Data> {}

Dim Gaji() As Integer=New Integer() {10,20,30}

Bentuk umum 2 :

Dim <nama_var> () As <Tipe_Data>()=New <Tipe_Data>(<Batas Atas)> {}

Dim Gaji() As Integer = New Integer(100) {}

• Mendeklarasikan variable Array langsung menginisialisasi.

Bentuk umum : Dim <nama_var_array>() As <Tipe_Data> = {nilai inisialisasi}

Dim Gaji() As Integer = {1000000, 2000000}

Variable array juga dapat berbentuk dua dimensi yang terdiri atas kolom dan baris.
Variable Array juga dapat memiliki dimensi lebih dari 2. Bentuk umum deklarasi,
inisialisasi, serta mengakses array dua dimensi, sebagai berikut :

Page 72
Bentuk umum 1 :

Dim <nama_var>(<kolom>,<baris>) As <Tipe_Data>

Bentuk umum 2 :

Dim <nama_var>(,) As <Tipe_Data> <nama_var> = New <Tipe_Data>


(<kolom>,<baris>){}

Bentuk umum 3 :

Dim <nama_var>(,) As <Tipe_Data> = New <Tipe_Data>(<kolom>,<baris>){}

Contoh :

Dim Matrik_A(3,3) As Integer

• Integer Array

Mendeklarasikan dan menginisialisasi sebuah interger array :

Dim array As Integer() = New Integer(3) {}

array(0) = 10
array(1) = 20
array(2) = 30
array(3) = 40

Pada kode di atas kita mendeklarasikan sebuah Integer Array dengan banyak elemen
sebanyak 4. Kemudian kita memberikan nilai pada masing-masing index Array dari 0-3.
Kita bisa mengambil nilai-nilai dari Array dengan menggunakan perulangan for.

Sebagai contoh, buat sebuah form dan tambahkan sebuah Button seperti gambar pada
contoh sebelumnya. Double klik pada Button tersebut kemudian tambahkan kode program
berikut :

Dim array As Integer() = New Integer(3) {}


array(0) = 10
array(1) = 20
array(2) = 30
array(3) = 40
For i As Integer = 0 To array.Length - 1

Page 73
MessageBox.Show(array(i))
Next

Kita juga bisa mendeklarasikan dan menginisialisasi sebuah Array dalam satu statement

Dim array As Integer() = New Integer() {10, 20, 30, 40}

Perhatikan bahwa pada kode di atas kita tidak menentukan panjang Array. Untuk
mendapatkan panjang sebuah array dapat menggunakan method Length().

array.Length()

• String Array

Untuk mendeklarasikan dan menginisialisasi sebuah String Array

Dim week(6) As String

Maksud atau arti dari kode program diatas adalah kita mendeklarasikan seubah Array
dengan nama “week” dengan tipe data “String” dan dengan banyak elemen data sebanyak
7.

week(0) = "Sunday"
week(1) = "Monday"

Pada statement di atas, kita menginisialisasikan nilai ke dalam String Array. week(0) =
"Sunday" berarti, kita menginisialisasikan bahwa nilai pertama dari Array adalah “Sunday”.

Dim weekName as String = week(1)

Kita dapat mengakses elemen Array dengan menggunakan indeks numerik, pada
statement di atas kita mengakses nilai data kedua dalam Array. Sehingga nilai yang akan
kita dapatkan adalah “Monday”.

Pada statement sebelumnya kita telah mendeklarasikan sebuah Array dengan nama
“week” dan dengan banyak elemen data sebanyak 7 nilai dengan tipe data String dan
element-elemen tersebut merupakan nama hari dalam seminggu. Selanjutnya adalah untuk
mendapatkan kembali atau memanggil elemen-elemen dari Array menggunakan perulangan
for.

Page 74
Sebagai contoh, buat sebuah form dan tambahkan sebuah Button seperti gambar pada
contoh sebelumnya. Double klik pada Button tersebut kemudian tambahkan kode program
berikut :

Dim i As Integer
Dim week(6) As String

week(0) = "Sunday"
week(1) = "Monday"
week(2) = "Tuesday"
week(3) = "Wednesday"
week(4) = "Thursday"
week(5) = "Friday"
week(6) = "Saturday"

For i = 0 To week.Length - 1
MsgBox(week(i))
Next

• Mengubah Ukuran Array


Ukuran sebuah Array dapat diubah. Kita bisa mengubah ukuran Array menjadi lebih beesar
atau lebih kecil. Ini dapat digunakan hanya pada Array 1 dimensi. Metode ini
mengalokasikan sebuah Array baru dengan ukuran tertentu, kemudian menyalin elemen
dari Array yang lama menjadi yang baru. Dan kemudian menggantikan Array lama dengan
yang baru.

Sebagai contoh, buat sebuah form dan tambahkan sebuah Button seperti gambar pada
contoh sebelumnya. Double klik pada Button tersebut kemudian tambahkan kode program
berikut :

Dim sArray As Char() = New Char(4) {}

sArray(0) = "A"
sArray(1) = "B"
sArray(2) = "C"
sArray(3) = "D"
sArray(4) = "E"

For i As Integer = 0 To sArray.Length - 1


MessageBox.Show(sArray(i).ToString())

Page 75
Next

Array.Resize(sArray, 3)

For i As Integer = 0 To sArray.Length - 1


MessageBox.Show(sArray(i).ToString())
Next

Array.Resize(sArray,3) dimaksudkan bahwa kita merubah ukuran Array menjadi 3 elemen


saja.

• Perulangan For Each Dengan Array

Sebagai contoh, buat sebuah form dan tambahkan sebuah Button seperti gambar pada
contoh sebelumnya. Double klik pada Button tersebut kemudian tambahkan kode program
berikut :

Dim array As Integer() = {10, 30, 50}

For Each element As Integer In array


MsgBox(element)
Next

• Sorting/Mengurutkan Element Array

Kita dapat mengurutkan elemen Array secara ascending maupun descending. Kita dapat
menggunakan method Sort() untuk mengurutkan elemen pada Array. Method Sort() hanya
dapat digunakan pada Array 1 dimensi.

• Sort pada Integer Array secara Ascending

Dim arr As Integer() = New Integer() {3, 1, 4, 5, 2}


Array.Sort(arr)
For Each str As Integer In arr
MsgBox(str)
Next

• Sort pada String Array secara Ascending

Dim ArrStr As String() = New String() {"c", "a", "d", "b"}


Array.Sort(ArrStr)

Page 76
For Each str As String In ArrStr
MsgBox(str)
Next

• Sort pada Integer Array secara Descending

Dim arr As Integer() = New Integer() {3, 1, 4, 5, 2}


Array.Sort(arr)
Array.Reverse(arr)
For Each str As Integer In arr
MsgBox(str)
Next

• Sort pada String Array secara Descending

Dim ArrStr As String() = New String() {"c", "a", "d", "b"}


Array.Sort(ArrStr)
Array.Reverse(ArrStr)
For Each str As String In ArrStr
MsgBox(str)
Next

DYNAMIC ARRAY / ARRAY DINAMIS

Array Dinamis dapat mengubah ukuran kapasitas dari Array pada saat Runtime. Jika
kita tidak mengetahui secara pasti jumlah elemen-elemen yang akan disimpan di dalam
Array pada saat membuat program maka kita dapat menggunakan Array Dinamis ini.

Menginisialisasikan Array Dinamis :

Dim scores() As Integer

Merubah ukuran / resizing :

ReDim scores(1)

Jika kita ingin menjaga item yang telah ada pada Array untuk tetap ada, maka kita dapat
menggunakan keyword “Preserve”

ReDim Preserve scores(2)

Page 77
Dalam kasus ini Array Dinamis mengalokasikan 1 atau lebih nilai String dan tetap menjaga
nilai yang telah ada.

Sebagai contoh, buat sebuah form dan tambahkan sebuah Button seperti gambar pada
contoh sebelumnya. Double klik pada Button tersebut kemudian tambahkan kode program
berikut :

Dim i As Integer
Dim scores() As Integer

ReDim scores(1)
scores(0) = 100
scores(1) = 200

For i = 0 To scores.Length - 1
MsgBox(scores(i))
Next

ReDim Preserve scores(2)

scores(2) = 300

For i = 0 To scores.Length - 1
MsgBox(scores(i))
Next

LIST

List adalah implementasi umum dari ArrayList. List hanya dapat menyimpan satu tipe
dari object yang telah disediakan parameternya. Class pada List di definisikan pada class
System.Collections.Generic dan mempunyai method dan property seperti class Collection
lainnya seperti Add, Insert, Remove, Search dan lain-lain.

• Add / Menambahkan Item Pada List

- Add nilai integer ke dalam List

Dim iList As New List(Of Integer)()

iList.Add(2)

Page 78
iList.Add(3)
iList.Add(5)
iList.Add(7)

- Add nilai string ke dalam List

Dim numbers As New List(Of String)()

numbers.Add("One")
numbers.Add("Two")
numbers.Add("Three")

• Menghitung Jumlah Item Yang Berada Dalam List

Kita dapat menghitung jumlah elemen yang berada di dalam List. Untuk menghitung
jumlah elemen yang berada di dalam List kita dapat menggunakan statement berikut :

numbers.Count

• Memanggil Atau Mendapatkan Kembali Item Dari List

Kita dapat memanggil atau mendapatkan kembali nilai yang berada di dalam List dengan
menggunakan perulangan “foreach” dan perulangan “for”

- Foreach

For Each number As String In numbers


MessageBox.Show(number)
Next

- For

For i As Integer = 0 To numbers.Count – 1


MessageBox.Show(numbers(i))
Next

• Insert / Memasukkan Sebuah Item Ke Dalam List

Page 79
Untuk memasukkan sebuah item ke dalam List sesuai dengan index yang di tentukan dapat
menggunakan method Insert(index,item)

numbers.Insert(1, "zero")

Pada statement di atas kita memasukkan value/nilai string “zero” ke dalam List pada posisi
index 1.

• Remove / Menghapus Item Dari List


Untuk menghapus item dari List dapat menggunakan method Remove()

numbers.Remove(1, "zero")

• Memeriksa Keberadaan Sebuah Item Di Dalam List

Method Contains() dapat digunakan untuk memeriksa keberadaan sebuah item di dalam
List.

If (numbers.Contains("Two")) Then
{
MessageBox.Show("Number Two exist in the list")
}

• Copy / Menyalin Sebuah Array Ke Sebuah List

Dim strArr As String() = New String(2) {}

strArr(0) = "Red"
strArr(1) = "Blue"
strArr(2) = "Green"

'untuk menyalin array ke dalam List


Dim arrlist As New List(Of String)(strArr)

• Menghapus Semua Item Dalam List

Method Clear() digunakan untuk menghapus semua item yang berada di dalam List.

Page 80
arrlist.Clear()

Sebagai contoh, buat sebuah form dan tambahkan sebuah Button seperti gambar pada
contoh sebelumnya. Double klik pada Button tersebut kemudian tambahkan kode program
berikut :

Dim numbers As New List(Of String)()

'menambahkan item ke dalam List


numbers.Add("One")
numbers.Add("Two")
numbers.Add("Three")

'memasukkan sebuah item ke dalam List


numbers.Insert(1, "Zero")

'memanggil item menggunakan perulangan foreach


For Each number As String In numbers
MessageBox.Show(number)
Next

'menghapus sebuah item dari List


numbers.Remove("Zero")

'memanggil item menggunakan perulangan for


For i As Integer = 0 To numbers.Count - 1
MessageBox.Show(numbers(i))
Next

If numbers.Contains("Two") Then
MessageBox.Show("Number two exist in the list")
Else
MessageBox.Show("Not exist")
End If

'copy atau menyalin array ke dalam List


Dim strArr As String() = New String(2) {}
strArr(0) = "Red"
strArr(1) = "Blue"
strArr(2) = "Green"
Dim arrlist As New List(Of String)(strArr)

Page 81
For Each str As String In arrlist
MessageBox.Show(str)
Next

'menghapus semua elemen dalam List


arrlist.Clear()

MessageBox.Show(arrlist.Count.ToString())

Page 82

Anda mungkin juga menyukai