Sekilas tentang Java Collection – part 1

Mungkin teman – teman tidak asing lagi dengan class List, Map, dan Set… ya…. class – class tersebut ada di dalam package java.util … dan juga mungkin teman – teman sudah cukup sering menggunakan class – class tersebut… karena memang kegunaan dari class – class tersebut sangat banyak.. dan class – class tersebut akan sangat berguna sekali untuk menampung objek sementara sebelum akhirnya di proses kemudian….

class – class tersebut diatas adalah beberapa contoh dari class Collection pada Java… dan dalam penggunaan nya masing – masing dari class tersebut memiliki peruntukannya masing – masing .. namun dalam tulisan ini saya tidak membahas peruntukan masing – masing collection tersebut.. teman – teman bisa melihat pada link berikut ini :

http://www.javapractices.com/topic/TopicAction.do;jsessionid=FEE16D66253AD88653BB195345A60625?Id=65

Nah pada tulisan kali ini saya akan mencoba untuk kembali menyegarkan ingatan teman – teman dengan penggunaan tiga class tersebut diatas… berikut contoh penggunaan nya ..

1. java.util.List

dalam penggunaan nya banyak orang menggunakan ArrayList dan LinkedList dalam mengimplementasikan penggunaan List… tapi sekali lagi saya tidak akan membahas keunggulan dan kelemahan dari ArrayList maupun LinkedList.. penjelasan tentang perbedaan ArrayList dan LinkedList teman – teman bisa melihat pada link di bawah ini :

http://java.lyracc.com/belajar/java-untuk-pemula/list

Pada tulisan ini saya hanya memberi contoh penggunaanya secara sederhana

public class coba {
public static void main(String[]args){
List<String> list = new LinkedList();//deklarasi pembuatan List
for(int i=0; i<=5; i++){
list.add(i+" - Muhammad Ghufron");//untuk memasukkan data ke dalam List
}
System.out.println("Ukuran List --> "+list.size());//untuk melihat jumlah data di dalam List
for(Iterator<String> iterator = list.iterator(); iterator.hasNext();){//untuk melihat isi List
String isi = iterator.next();
System.out.println(isi);
}
}
}

hasil output dari kode program diatas adalah sebagai Berikut  :

Ukuran List --> 6
0 - Muhammad Ghufron
1 - Muhammad Ghufron
2 - Muhammad Ghufron
3 - Muhammad Ghufron
4 - Muhammad Ghufron
5 - Muhammad Ghufron

Mudah kan… ?? teman – teman bisa lihat bahwa List bisa di deklarasikan sesuai dengan tipe data yang akan kita isi nantinya.. seperti halnya diatas.. saya mendefinisikan List<String>.. yang berarti bahwa List tersebut hanya bisa menampung data dalam bentuk String..  kalau teman – teman tidak mendefinisikan seperti itu.. maka List tersebut bisa diisi dengan tipe apapun.. nah sekarang teman – teman bisa memodifikasi kode program diatas menjadi seperti ini :

public class coba {
public static void main(String[]args){
List&amp;lt;String&amp;gt; list = new LinkedList();//deklarasi pembuatan List
for(int i=0; i&amp;lt;=5; i++){
if(i % 2 == 0){
list.add(i+&quot; - Muhammad Ghufron&quot;);//untuk memasukkan data ke dalam List jika i = genap
}else{
list.add(i+&quot; - Ghufron Ganteng&quot;);//untuk memasukkan data ke dalam List jika i = ganjil
}
}
System.out.println(&quot;Ukuran List --&amp;gt; &quot;+list.size());//untuk melihat jumlah data di dalam List
for(Iterator&amp;lt;String&amp;gt; iterator = list.iterator(); iterator.hasNext();){//untuk melihat isi List
String isi = iterator.next();
System.out.println(isi);
}
}
}

Kode program diatas mengalami sedikit modifikasi.. jika nilai i = genap maka akan menyimpan ” i – Muhammad Ghufron” ke dalam List.. namun jika nilai i adalah ganjil akan menyimpan ” i – Ghufron Ganteng” ke dalam List… dan pada saat dijalan kan maka output programnya akan seperti dibawah ini :

Ukuran List --&amp;gt; 6
0 - Muhammad Ghufron
1 - Ghufron Ganteng
2 - Muhammad Ghufron
3 - Ghufron Ganteng
4 - Muhammad Ghufron
5 - Ghufron Ganteng

Dan yang terakhir pada bagian ini adalah kita akan mengurutkan isi dari List tersebut dengan menggunakan Collections.sort… sangat mudah sekali .. teman – teman tinggal menambahkan kode program Collections.sort(list) hingga kode program seperti di bawah ini :

public class coba {
public static void main(String[]args){
List&amp;lt;String&amp;gt; list = new LinkedList();//deklarasi pembuatan List
for(int i=0; i&amp;lt;=5; i++){
if(i % 2 == 0){
list.add(&quot;- Muhammad Ghufron&quot;);//untuk memasukkan data ke dalam List jika i = genap
}else{
list.add(&quot;- Ghufron Ganteng&quot;);//untuk memasukkan data ke dalam List jika i = ganjil
}
}
System.out.println(&quot;Ukuran List --&amp;gt; &quot;+list.size());//untuk melihat jumlah data di dalam List
Collections.sort(list);// untuk men sortir data di dalam list
for(Iterator&amp;lt;String&amp;gt; iterator = list.iterator(); iterator.hasNext();){//untuk melihat isi List
String isi = iterator.next();
System.out.println(isi);
}
}
}

Nah.. outputnya akan menjadi seperti ini :

Ukuran List --&amp;gt; 6
- Ghufron Ganteng
- Ghufron Ganteng
- Ghufron Ganteng
- Muhammad Ghufron
- Muhammad Ghufron
- Muhammad Ghufron

Kalau sudah di kelompokkan seperti diatas… kita bisa meniadakan kesamaan data… atau kita hanya akan menampilkan data yang berbeda saja… heheh simple…

public class coba {
public static void main(String[]args){
List list = new LinkedList();//deklarasi pembuatan List
for(int i=0; i &quot;+list.size());//untuk melihat jumlah data di dalam List
Collections.sort(list);// untuk men sortir data di dalam list
String aa = &quot;&quot;;
for(Iterator iterator = list.iterator(); iterator.hasNext();){//untuk melihat isi List
String isi = iterator.next();
if(!isi.equalsIgnoreCase(aa)){
System.out.println(isi);
aa = isi;
}
}
}
}

Dan hasil output programnya adalah :

Ukuran List --&amp;gt; 6
- Ghufron Ganteng
- Muhammad Ghufron

Simple Bukan.. ! heeh Mungkin teman – teman akan tertawa.. cuma kaya gitu.. kah..?? ya.. tapi yakin lah .. bahwa yang kaya gini kepake banget. waktu kita ngedevelop aplikasi… tentu dengan kasus yang lebih kompleks lagi.. Selamat Belajar

gambar sumber : http://netsains.com/wp-content/uploads/2009/02/brain.jpg

2 thoughts on “Sekilas tentang Java Collection – part 1

  1. Kalau listnya berada di file (txt) terdiri dari 3 baris, misal:
    Sepatu Bola Baju
    Celana Kaus Handuk
    Jaket Motor

    untuk mencetak list yang berada di line 2 saja bagaimana ya mas? Trims.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>