COLLECTION

33
COLLECTION Imam Fahrur Rozi

description

COLLECTION. Imam Fahrur Rozi. TOPIK. Pengenalan Collection Collection Framework Collection Interfaces Map Pengambilan element Iterator ListIterator Enumeration. PENGENALAN COLLECTION. - PowerPoint PPT Presentation

Transcript of COLLECTION

Page 1: COLLECTION

COLLECTION

Imam Fahrur Rozi

Page 2: COLLECTION

TOPIK

• Pengenalan Collection• Collection Framework• Collection Interfaces• Map• Pengambilan element– Iterator– ListIterator– Enumeration

Page 3: COLLECTION

PENGENALAN COLLECTION

• Collection juga disebut container merupakan obyek yang menyimpan elemen – elemen obyek ke dalam satu unit

• Dalam Java collection digunakan untuk menyimpan, menerima dan memanipulasi obyek, mirip pada array.

• Collection yang umum yaitu HashTable, Array dan Vector telah ada sejak versi JDK 1.2

Page 4: COLLECTION

PENGENALAN COLLECTION

• JDK 1.2 dan sebelumnya tidak memiliki collection framework.

• Array dapat meyimpan tipe data primitif ataupun obyek, tetapi Collection hanya menyimpan obyek saja

• Tipe data primitif tidak bisa ditambah ke Collection, sehingga harus menggunakan wrapper class-nya

Page 5: COLLECTION

COLLECTION FRAMEWORK• Collection framework merupakan kerangka yang digunakan

untuk merepresentasikan dan memanipulasi collection• Collection Framework meliputi :• Interfaces : Mendefinisikan method dimana tiap tipe

collection harus mengimplementasikannya• Implementation : Kelas yang mengimplementasikan

interface collections, misal HashSet dan TreeMap• Algoritma : Method yang digunakan untuk melakukan

komputasi, seperti sorting, searching, menyimpan dan memanipulasi elemen

Page 6: COLLECTION

COLLECTION INTERFACE

• Interface dalam collection framework merupakan pondasi dari collection

• Map dan SortedMap bukan turunan dari interface Collection. Map dan SortedMap tetap dikenali sebagai collection, meskipun menurut batasan definisi Java menyatakan bahwa Map dan SortedMap bukan termasuk tipe Collection

Page 7: COLLECTION

HIRARKI COLLECTION INTERFACE

Page 8: COLLECTION

Definisi Interfaces• Collection : sekumpulan obyek yang tidak mempunyai posisi yang

tetap (no particular order) dan menerima duplikat.• List: sekumpulan obyek yang urut (ordered) dan menerima

duplikat.• Set: sekumpulan obyek yang tidak urut (unordered) dan menolak

duplikat.• Map: mendukung pencarian berdasarkan key, key ini harus unik.

Has no particular order.• SortedSet : Extend interface Set dengan mengurutkan elemennya• SortedMap : Extend interface Map dengan mengurutkan key

elemennya

Page 9: COLLECTION

Method Interface Collection

• boolean add(Object element) : Menambahkan elemen pada collection, bila berhasil akan mengembalikan nilai true.

• boolean remove(Object element) : Menghapus elemen di collection, bila berhasilakan mengembalikan nilai true.

• int size() : Mengembalikan jumlah elemen dalam collection

Page 10: COLLECTION

Method Interface Collection

• boolean isEmpty() : Jika tidak terdapat elemen sama dalam collection maka akan mengembalikan nilai true.

• boolean contains(Object elemen) : Akan mengembalikan nilai true jika elemen terdapat pada collection.

• boolean containsAll(Collection collection_A) : Akan mengembalikan nilai true jika semua elemen yang ada pada collection_A ada pada collection.

Page 11: COLLECTION

Method Interface Collection

• boolean addAll(Collection collection) : Akan mengembalikan nilai true jika semua elemen yang ada pada collectionA berhasil ditambahkan pada collection.

• void clear() : Mengapus semua elemen collection.• void removeAll(Collection collection_A) : Menghapus

semua elemen collection yang adapada collectionA• void retainAll(Collection collection A) ( _ ) : Menghapus

semua elemen Collection kecuali elemen yang ada pada Collection_A

Page 12: COLLECTION

Beberapa yang kita bahas

Page 13: COLLECTION

Set : HashSet

• Elemen pada Set selalu unik.• Set menolak duplikat.• Elemen yang tersimpan tidak urut (unordered)

dan unsorted.• Interface Set merupakan sub interface dari

interface Collection

Page 14: COLLECTION

Contoh HashSet

Page 15: COLLECTION

SortedSet : TreeSet

• Aturan sama dengan interface Set menolak duplikat.

• SortedSet adalah subinterface Set.• Beda : elemen tersimpan dalam urutan

ascending sorted

Page 16: COLLECTION

Contoh TreeSet

Page 17: COLLECTION

List

• Elemen tersimpan terurut (ordered).• Urut berdasarkan masukan.• Menerima duplikat.• Contoh List:• LinkedList : elemen dalam LinkedList masuk dari awal

dan dihapus dari akhir.• Vector : a growable array of object.• ArrayList: mirip vector, bersifat unsyncronized (jika

multiple threads mengakses object ArrayList, object ini Harus syncronized secara eksternal)

Page 18: COLLECTION

Contoh ArrayList

Page 19: COLLECTION

Contoh Vector

Page 20: COLLECTION

Map• Menyimpan elemen dengan key unik.• Satu key untuk satu elemen.• Key disimpan dalam bentuk object.• Map tidak bisa menyimpan duplicate key.• Map bisa menyimpan duplicate element.• Has no particular order.• Contoh:

– Hashtable– HashMap

• not syncronized for threads• permits null values to be stored

Page 21: COLLECTION

Contoh HashTable

Page 22: COLLECTION

Contoh HashMap

Page 23: COLLECTION

SortedMap : TreeMap

• Aturan mirip Map• Beda: obyek tersimpan secara sorted

berdasarkan key.• No duplicate key .• Elements boleh duplikat.• Key tidak boleh null value

Page 24: COLLECTION

Contoh TreeMap

Page 25: COLLECTION

Bagan Perbandingan

Page 26: COLLECTION

Iterator

• Iterasi adalah proses mendapatkan kembali (retrieve) elemen yang terdapat dalam collection.

• Iterator merupakan interface yang bisa digunakan untuk meretrieve elemen collection.

Page 27: COLLECTION

ListIterator

• ListIterator adalah subinterface dari Iterator.• Dengan menggunakan ListIterator pada List,

maka elemen dapat diambil secara backward.• Gunakan method next atau previous sebagai

navigasi

Page 28: COLLECTION

Hirarki Iterator

Page 29: COLLECTION

Contoh Iterator

Page 30: COLLECTION

Enumeration

• Enumeration adalah variasi dari Iterator.• Cara kerja Enumeration mirip dengan Iterator. • Method hasNext() diganti dengan

hasMoreElements(• Method next() untuk mengambil obyek diganti

nextElement• Diunakan pada Vector

Page 31: COLLECTION

Conth Enumeration

Page 32: COLLECTION

Kesimpulan

• Collection menyimpan element tidak berurut (unordered) tidak ada duplikasi

• List mengurutkan element• Set menolak duplikasi element• Map menggunakan key unik untuk menandai

elementnya

Page 33: COLLECTION

Kesimpulan dari Segi Penyimpanan• Menggunakan array membuat penyisipan dan penghapusan

elemen serta penambahan kapasitas simpan lebih sulit.• List mendukung penyisipan dan penghapusan elemen serta

penambahan kapasitas simpan, tetapi pengaksesan indeks menjadi lambat

• Tree mendukung penyisipan dan penghapusan elemen serta penambahan kapasitas simpan, pengaksesan indeks menjadi lambat tetapi pencarian lebih cepat

• Hash mendukung penyisipan dan penghapusan elemen serta penambahan kapasitas simpan Pengaksesan indeks menjadi lambat tetapi pencarian sedikit lebih cepat. Hash membutuhkan key unik untuk menyimpan data element