LAPORAN PRAKTIKUM STRUKTUR DATA MODUL 8 YASIR AMRI NIM : 115610120 JURUSAN SISTEM INFORMASI LABORATORIUM TERPADU SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AKAKOM YOGYAKARTA 2013 PERTEMUAN KE - 8 COLLECTION A. PEMBAHASAN Pada Praktikum kali ini kita akan membahas tentang Collection secara umum adalah sebuah kumpulan. Dalam OOP collection dikenal sebagai suatu tempat atau wadah atau object yang menyimpan object lainya baik yang memiliki tipe data yang sama maupun tidak. Praktikum ke- 1 import java.util.*; Program diatas digunakan untuk mengimport class-class yang terdapat pada java util. public class Example { //private List<String> list; private List list; public List getList(){ return list; } Program diatas menjelaskan bahwa nama kelas dari program ini kelas Example. Kelas tersebut memiliki tingkat akses private, karena menggunakan akses private, maka data dan method dapat diakses oleh kelas yang memilikinya saja. Dan dengan menggunakan variabel list dari tipe data List. Public List getList(), berarti merupakan konstruktor yang dapat diakses semua bagian atau method dalam program ini, yiatu pada List dengan perintah getList atau mengambil daftar List. Maka nilai list akan dikembalikan kembali Example() { list = new ArrayList(); list.add(new String("Asslamulaikum Yasir Amri...!")); list.add(new String("Walaikumsalam !")); } Program diatas merupakan bagian isi dari program dengan nama kelas Example, yaitu list = new ArrayList, merupakan penciptaan list dengan ArrayList, yang teridiri dari list yang ditambah dengan tipe data String dengan variabel atau isi dari tipe data tersebut adalah “Asslamulaikum Yasir Amri...!", kemudian ditambah lagi daftarnya dengan tipe data String pula yang menyatakan pernyataan "Walaikumsalam !". public void printList() { for (Object s:list) { System.out.println(s); } } Program diatas digunakan untuk sebuah method atau konstruktor dengan nama printList. Dan pada method ini dapat diakses oleh semua method lain yang terdapat dalam program ini. Pada method ini akan membaca dari kels Example dengan perulangan, yang menyatakan objek s adalah list atau daftar yang ditambah dari kelas Example tersebut. Dengan menggunakan perintah System.oyt.println(s), berfungsi untuk memanggil atau menampilkan hasil dari perulangan for tersebut. public static void main(String argv[]) { Example e = new Example(); e.printList(); Collections.sort(e.getList()); e.printList(); } } Program diatas merupakan suatu method yang mana bersifat public sehingga dapat diakses semua method yang ada pada program ini, perintah tersebut juga merupakan perintah method dengan memulai program dengan method main. Dalam method tersebut, diciptakaannya object dari class example dan akan dibawa ke dalam method printList untuk dieksekusi atau ditampilkan pada outputnya. Praktikum ke- 2 import java.awt.Graphics; import java.util.LinkedList; import javax.swing.JFrame; program diatas mengimport graphics dan juga Frame untuk class ini. public class PercobaanLinkedList extends JFrame { public static void main(String args[]) { new PercobaanLinkedList(); } Program diatas akan merupakan suatu kelas dengan nama PercobaanLinkedList. Yang merupakan program utama. LinkedList l1 = new LinkedList(); Program diatas akan merupakan Constructor. PercobaanLinkedList() { l1.add("Test LinkedList"); Program diatas menjelaskan akan dilakukan penciptaan objek dari kelas LinkedList nya yaitu dengan nama l1. dari kelas PercobaanLinkedLlist akan melakukan penambahan obek yang dilakukan dari penciptaan objek tersebut dengan melakukan penambahan data pada objek l1 yang memiliki pernyataan “Test LinkedList”.. l1.add("Coba lagi"); Program diatas akan melakukan lagi penambahan data dari penciptaan objek baru l1 dengan pernyataan “Coba lagi”. l1.add("50000"); Program diatas akan melakukan penambahan data lagi pada objek l1 dengan pernyataan 50000. this.setDefaultCloseOperation(this.EXIT_ON_CLOSE); Program diatas akan menunjuk pada kostruktor atau method yang dituju dalam program ini, yaitu this menyatakan mengatur operasi tutup dari form dekstopnya, yaitu berupa EXIT_ON_CLOSE, untuk keluar form atau mutup form tersebut. this.setSize(500, 500); Program diatas akan menjelaskan diperlukanlah perintah atau pengaturan dengan menggunakan setsize, yang mana kata kunci menunjuk pada perintah setSize untuk mengatur ukuran form dengan ukuran 500 x 500. this.setVisible(true); setTitle("Test LinkedList"); } Digunakan untuk mengatur tampilkan hasil formnya dibutuhkan perintah setvisible yang bernilai true/benar. Dan jika menggunakan setTitle itu merupakan pengaturan untuk judul pada form yang dibuat. Dan pada program ini membuat form dengan judul “Test LinkedList”. public void paint (Graphics g) { g.drawString("Jumlah Elemen : "+String.valueOf(l1.size()),10, 50); g.drawString("Hasil Elemen ke-1 : "+l1.get(0), 10, 100); g.drawString("Hasil Elemen ke-2 : "+l1.get(1), 10, 150); g.drawString("Hasil Elemen ke-3 : "+l1.get(2), 10, 200); Program diatas merupakan perintah yang akan menampilkan isi dari g yang dibawah ke dalam drawString yang kemudian akan menampilkan kata di antara petik dua, yaituMethod getFirst yag akan disertai dengan data l1 yang diambil dengan menggunakan perintah getFirst dari l1 dengan ukuran 10x250, maka dari data yang ada pada l1, untuk data l1 yang ditambah pertama adalah “Test LinkedList”, maka kan ditampilkan hasil tersebut. Kemudian akan menampilkan pula Method getLast, yiatu akan mengambil data l1 dengan perintah getLast dengan menggunakan ukuran 10x300, dari data l1 yang masuk dalam LinkedList, yang masuk terakhir adalah 50000, maka data tersebut akan ditampikan saat dilakukan pemanggilan dengan getLast. g.drawString("Method getFirst() : "+l1.getFirst(), 10, 250); g.drawString("Method getLast() : "+l1.getLast(), 10, 300); Digunakan untuk menampilkan isi dari g yang dibawah ke dalam drawString yang kemudian akan menampilkan kata di antara petik dua, yaituMethod getFirst yag akan disertai dengan data l1 yang diambil dengan menggunakan perintah getFirst dari l1 dengan ukuran 10x250, maka dari data yang ada pada l1, untuk data l1 yang ditambah pertama adalah “Test LinkedList”, maka kan ditampilkan hasil tersebut. Kemudian akan menampilkan pula Method getLast, yiatu akan mengambil data l1 dengan perintah getLast dengan menggunakan ukuran 10x300, dari data l1 yang masuk dalam LinkedList, yang masuk terakhir adalah 50000, maka data tersebut akan ditampikan saat dilakukan pemanggilan dengan getLast. l1.addLast("Finish"); g.drawString("Method getLast() : "+l1.getLast(), 10, 350); Digunakan untuk penambahan objek lagi terhadapa l1 LinkedListnya dengan menggunakan perintah addLast, hal tersebut berarti data yang akan masuk dalam LinkedList dengan nama l1, akan dilakukan penambah dari belkangan atau terakhir. Dari data sebelumnya yang berada dalam posisi terakhir adalah 50000, maka saat dilakukan l1.addLast dengan nama “Terakhir”, maka variabel data dengan nama terakhir akan menggantikan posisi 50000 sebagai method terkahir dalam LinkedList l1 ini. l1.remove(); g.drawString("Hasil Elemen Sekarang : "+String.valueOf(l1.size()),10, 400); } } Digunakan untuk menghapus data dalam LinkedList l1, yaitu menggunakan perintah remove, maka akan ada satu data yang dipilih untuk dihapus. Sehingga saat dilakukan pengecekan jumlah elemen sekarang, dapat diketahui bahwa dengan menggunakan perintah String.valueOf tersebut utnuk mengetahui jumlah elemen yang ada dalam LinkedList l1, yaitu terdapat 3 elemen dan memiliki ukuran 10x400. Yang mana semulanya saat dilakukan penambahan elemen terakhir, jumlah elemen yang ada dalam l1 adalah 4 elemen, saat dilakukan pemanggilan perintah remove, maka akan ada satu elemn yang keluar atau terhapus dari l1, sehingga 4 – 1 = 3 elemen sekarang dalam l1. B. TUGAS SOAL 1. Apa perbedaan Vektor dan ArrayList pada packet java.util ? Jawab a. Arraylist tidak disinkronkan sementara vector disinkronkan. b. Arraylist tidak memiliki ukuran standar sementara vektor memiliki ukuran standar 10. c. Arraylist tidak mendefinisikan ukuran kenaikan sementara vektor tidak. 2. Bagaimana perintah untuk menambah, menghapus dan menampilkan data pada List ? Jawab Menambah dengan cara pada percobaan praktikum diatas sebelumnya dengan menggunakan fungsi add dimana adapun penambahan statement sebelumnya misalnya saja pada praktikum diatas dijelaskan l1(merupakan statement).add(nama data yang akan ditambahkan dalam statement program anda), misal l1.add(10243); Menghapus menggunakan perintah remove, yiatu l1.remove(); Menampilkan dengan perintah g.drawString misalnya g.drawString("Jumlah Elemen Sekarang : " +String.valueOf(l1.size()),10,400); C. KESIMPULAN Kesimpulan dari praktikum ke-8 ini yaitu Collection adalah sebuah program yang terdiri dari berbagai macam program dan dapat menyimpan object lainnya baik yang memiliki tipe data yang sama maupun tidak sama semisal vector, arraylist, dan list. D. Listing terlampir . . .