Politeknik Elektronika Negeri Surabaya

dokumen-dokumen yang mirip
PRAKTIKUM 19 JAVA COLLECTION FRAMEWORK : SET DAN LIST

PRAKTIKUM 20 JAVA COLLECTION FRAMEWORK : MAP

C. TUGAS PENDAHULUAN Buatlah resume 1 halaman mengenai Priority Queue dan berikan penjelasannya.!

A. TUJUAN PEMBELAJARAN 1. Memahami konsep Class LinkedList di Collection 2. Memahami penggunaan method-method pada Class LinkedList.

Collections. Collections Framework

Pemrograman Berbasis Objek. Collections. Politeknik Elektronika Negeri Surabaya

INSTITUT TEKNOLOGI SUMATERA COLLECTION: SET DAN MAP

Jobsheet 16 String dan Collection (List, Set, Map)

Pemrograman Berorientasi Obyek Lanjut (IT251) Ramos Somya, S.Kom., M.Cs.

Praktikum Queue dan PriorityQueue

03/04/2018. Collection set List Map. Pemrograman Berorientasi Object

KOLEKSI OBJECT. Farah Zakiyah Rahmanti, M.T Universitas Dian Nuswantoro

Pemrograman Berorientasi. Array dan Collections

Grouping Object. Viska Mutiawani, M.Sc

MODUL III ARRAYLIST TUGAS PENDAHULUAN

Boxing & AutoBoxing Java Collection Framework. Collection List Map Set. Generics vs Inheritance

IMPLEMENTASI STRUKTUR DATA LIST, QUEUE DAN STACK DALAM JAVA

Java Collections Framework

Gambar 1. Single Linked List

Gambar 1. Single Linked List

A. TUJUAN PEMBELAJARAN 1. Memahami konsep dan operasi pada Stack. 2. Mampu mengimplementasikan struktur data Stack pada array dan List.

Score: 94.0 Persentage: % ~ u ~ Generated by Foxit PDF Creator Foxit Software For evaluation only.

Pemrograman Berbasis Objek. Collections. Politeknik Elektronika Negeri Surabaya

B.1 Mengurutkan Objek String Terdapat array dengan tipe String, untuk mengurutkan data String pada array gunakan Arrays.sort().

B.1 Mengurutkan Obyek String Terdapat array dengan tipe String, untuk mengurutkan data String pada array gunakan Arrays.sort().

Gambar 1. Single Linked List

Gambar 1. Single Linked List

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK

Belajar ArrayList di Java

Praktikum Stack. A. Stack Collection di java.util.collection. Percobaan 1. Percobaan 2. import java.util.iterator; import java.util.

1. Latar Belakang Didalam pembuatan game java sering kali kita mendefinisikan banyak object seperti gambar, dan grafik geometri yang begitu banyak,

PEMROGRAMAN BERORIENTASI OBJEK COLLECTION DAN MULTITHREADING. ADAM MUKHARIL BACHTIAR TEKNIK INFORMATIKA UNIKOM

Permainan Remi Sederhana

Pemrograman Berorientasi Objek Collection dan Multithreading. Adam Mukharil Bachtiar Teknik Informatika UNIKOM

Java Generic & Collection

Algoritma Pemrograman [BS204]

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA QUEUE

Gambar 1. Langkah-langkah pengurutan metode Insertion Sort (1)

IF PEMROGRAMAN LANJUT GENERIC. Oleh : Andri Heryandi, M.T.

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 1)

Generics. Prepared by Viska Mutiawani. 1

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 2)

IT 405: KPLBO MATERI 9 RELASI ANTAR OBJEK III. Ayi Purbasari, ST., MT. If-Unpas, 2014

Politeknik Elektronika Negeri Surabaya

Everybody in this country should learn how to program a computer because it teaches you how to think. Steve Jobs

Algoritma dan Struktur Data. Queue

Algoritma & Struktur Data. Array. Oleh : Nur Hayatin, M.Kom

Modul Praktikum 3 Pemograman Berorientasi Objek

1. Memahami mengenai Konsep Graph dan istilah-istilah yang terdapat pada Graph 2. Memahami implementasi Graph ke dalam bahasa pemrograman

Metode Binnary Searching di Java Console

Operator dan Assignment

Struktur Data dan Algoritma

Politeknik Elektronika Negeri Surabaya

Praktikum tentang Collection Permainan Remi

BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA

Politeknik Elektronika Negeri Surabaya

Pemrograman Berbasis Objek Operator dan Assignment

Praktikum KPLBO Collection II

Modul 3: Tipe Data Abstrak Dinamis List, LinkList dan Model Antrian Stack & Queue

B.1 Mengurutkan Objek String Terdapat array dengan tipe String, untuk mengurutkan data String pada array gunakan Arrays.sort().

LAMPIRAN 1. Listing Program

A. TUJUAN PEMBELAJARAN

BAB 2 COLLECTION & THREAD

Pada pembuatan game di java, sering kali para programer. mendefinisikan banyak object seperti suara, gambar, dan grafik geometri yang

PRAKTIKUM STRUKTUR DATA QUEUE. SULIDAR FITRI, M.Sc

Percabangan & Perulangan

Gambar 1. Ilustrasi Stack

IF2281 Pemrograman Berorientasi Objek Program kecil Pelengkap Diktat. import java.io.*; import java.util.scanner; class IO {

Gambar 1. Ilustrasi Stack

Percabangan & Perulangan

GENERICS. Yuliana Setiowati. Politeknik Elektronika Negeri Surabaya. Topik

Politeknik Elektronika Negeri Surabaya

IF PEMROGRAMAN LANJUT TUGAS 1. Oleh : Andri Heryandi, M.T.

int i = 0; while (i < 10) { System.out.println( Informatika Unpas ); i++; }

Politeknik Elektronika Negeri Surabaya

A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami Konsep Binary Search Tree 2. Mengimplementasaikan Binary Search Tree

A. TUJUAN PEMBELAJARAN 1. Memahami mengenai konsep Enum 2. Memahami bentuk-bentuk penggunaan Enum 3. Memahami fungsi-fungsi yang terdapat di Enum

I. Tujuan Instruksional Umum Mengenal konsep dasar berorientasi objek Memahami dan dapat mengimplementasikan Kelas dan Objek pada java.

1. Mana diantara pilihan-pilihan berikut ini yang merupakan penulisan loop yang benar?

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

OBJECT ORIENTED PROGRAMMING. Day 3 : Operator dan Assignment

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA MODUL KE-2 STACK DAN QUEUE

B. DASAR TEORI Array. Misalkan kita memiliki tiga data yang berbeda dan kita simpan dalam variabel yang berbeda.

Pemrograman Berorientasi Obyek. Operator & Assignment

Percabangan dan Perulangan

Pemrograman. Pertemuan-3 Fery Updi,M.Kom

Politeknik Elektronika Negeri Surabaya

KENDALI PROSES. Untuk mengatur arus program, pemrograman java menyediakan struktur perulangan (looping), kondisional, percabangan, dan lompatan.

Arrays, Collections and Generics. Sisilia Thya Safitri, MT Agus Priyanto, MKom

Operator dan Assignment. Pertemuan 3 Pemrograman Berbasis Obyek

Java Operators. Nurochman

BAB II VARIABEL DAN TIPE DATA

Perulangan / Looping

Modul 4: Iteratif & Rekursif, Binary Tree

2 TIPE DATA DAN VARIABEL

Politeknik Elektronika Negeri Surabaya

Obyektif : KONTROL ALUR PROGRAM

Bab 3. Modul ini mengenalkan suatu teknik pemrograman yang lebih tinggi. Dalam bagian ini Anda akan mempelajari rekursif dan tipe data abstrak.

Variabel dengan tipe dasar hanya dapat menyimpan sebuah nilai

LAPORAN PRAKTIKUM RESMI QUEUE

Transkripsi:

PRAKTIKUM 3 JAVA COLLECTION FRAMEWORK A. TUJUAN PEMBELAJARAN 1. Memahami cara penyimpanan obyek menggunakan Collection. 2. Mengetahui pengelompokan dari Collection. 3. Mengetahui perbedaan dari interface Set, List dan Map. 4. Mengetahui penggunaan class-class dari interface Set, List dan Map. 5. Mengetahui cara penggunaan Iterasi dan Enumeration. B. DASAR TEORI Collection adalah suatu obyek yang bisa digunakan untuk menyimpan sekumpulan obyek. Obyek yang ada dalam Collection disebut elemen. Collection menyimpan elemen yang bertipe Object, sehingga berbagai tipe obyek bisa disimpan dalam Collection. Class-class mengenai Collection tergabung dalam Java Collection Framework. Classclass Collection diletakkan dalam package java.util dan mempunyai dua interface utama yaitu Collection dan Map. Mulai java 1.5 (juga dikenal sebagai J2SE 5), semua class yang termasuk Java Collection Framework adalah class generics. Untuk kompatibilitas dengan versi java sebelumnya, penggunaan generics tidak diharuskan, namun sangat disarankan. Collection terbagi menjadi 3 kelompok yaitu Set, List dan Map. Berikut ini adalah struktur hierarki interface dan class yang termasuk dalam kelompok collection ini. 20

Gambar 3.1 Struktur Collection di Java Java Collections Framework terbagi menjadi tiga kelompok: Set Set mengikuti model himpunan, dimana obyek/anggota yang tersimpan dalam Set harus unik. Urutan maupun letak dari anggota tidaklah penting, hanya keberadaan anggota saja yang penting. Class-class yang mengimplementasikan interface Set adalah HashSet. Interface SortedSet merupakan subinterface dari interface Set. Untuk mengurutkan Set, kita dapat menggunakan class yang mengimplementasikan interface SortedSet yaitu clas TreeSet. List List digunakan untuk menyimpan sekumpulan obyek berdasarkan urutan masuk (ordered) dan menerima duplikat. Cara penyimpanannya seperti array, oleh sebab itu memiliki posisi awal dan posisi akhir, menyisipkan obyek pada posisi tertentu, mengakses dan 21

menghapus isi list, dimana semua proses ini selalu didasarkan pada urutannya. Classclass yang mengimplementasikan interface List adalah Vector, Stack, Linked List dan Array List. Terdapat interface Queue yang cara penyimpanan seperti List, interface ini menyimpan obyek menggunakan metode FIFO (First In First Out) yaitu obyek yang masuk pertama keluar pertama. Class-class yang mengimplementasikan interface Queue adalah PriorityQueue dan LinkedList. Data yang tersimpan pada obyek PriorityQueue akan diurutkan, data tersebut harus mengimplementasikan obyek Comparable atau Comparator. Map Perbedaaan mendasar map dengan collection yang lain, untuk menyimpan obyek pada Map, perlu sepasang obyek, yaitu key yang bersifat unik dan nilai yang disimpan. Untuk mengakses nilai tersebut maka kita perlu mengetahui key dari nilai tersebut. Map juga dikenal sebagai dictionary/kamus. Pada saat menggunakan kamus, perlu suatu kata yang digunakan untuk pencarian. Class-class yang mengimplementasikan Map adalah Hashtable,HashMap, LinkedHashMap. Untuk mengurutkan Map menggunakan interface SortedMap, class yang mengimplementasikan interface tersebut adalah TreeMap. C. TUGAS PENDAHULUAN Buatlah resume 1 halaman mengenai Java Collection Framework dan pembagian kelompok Collection. D. PERCOBAAN Percobaan 1 : Memahami penggunaan class-class yang mengimplementasikan interface Set yaitu class HashSet dan class TreeSet import java.util.*; public class SetExample { Set set=new HashSet(); set.add("bernadine"); set.add("elizabeth"); 22

set.add("gene"); set.add("elizabeth"); set.add("clara"); System.out.print("Elemen pada HashSet : "); System.out.println(set); Set sortset=new TreeSet(set); System.out.print("Elemen pada TreeSet : "); System.out.println(sortSet); Percobaan 2 : Penggunaan Class HashSet public class FindDups { Set<String> s = new HashSet<String>(); for (String a : args) if (!s.add(a)) System.out.println("Duplicate detected: " + a); Jalankan dengan : System.out.println(s.size() + " distinct words: " + s); java FindDups i came i saw i left public class FindDups2 { Set<String> uniques = new HashSet<String>(); Set<String> dups = new HashSet<String>(); Jalankan dengan for (String a : args) if (!uniques.add(a)) dups.add(a); // Destructive set-difference uniques.removeall(dups); System.out.println("Unique words: " + uniques); System.out.println("Duplicate words: " + dups); java FindDups i came i saw i left Percobaan 3 : Interface Set menerapkan konsep himpunan. Mengetahui implementasi konsep himpunan pada interface Set. 23

import java.util.*; public class SetExample { Set s1=new HashSet(); s1.add("australia"); s1.add("sweden"); s1.add("germany"); Set s2=new HashSet(); s2.add("sweden"); s2.add("france"); Set union=new TreeSet(s1); union.addall(s2); // gabungan dari s1 dan s2 print("union",union); "); Set intersect=new TreeSet(s1); intersect.retainall(s2); // irisan dari s1 dan s2 print("intersection",intersect); protected static void print(string label, Collection c){ System.out.println("---------------- "+ label+" --------------- Iterator it=c.iterator(); while(it.hasnext()){ System.out.println(it.next()); Percobaan 4 : Memahami penggunaan class-class yang mengimplementasikan interface List yaitu ArrayList dan LinkedList. import java.util.*; public class ListExample { List list=new ArrayList(); list.add("bernadine"); list.add("elizabeth"); list.add("gene"); list.add("elizabeth"); list.add("clara"); System.out.println(list); System.out.println("2 : "+list.get(2)); System.out.println("0 : "+list.get(0)); LinkedList queue=new LinkedList(); queue.addfirst("bernadine"); queue.addfirst("elizabeth"); 24

queue.addfirst("gene"); queue.addfirst("elizabeth"); queue.addfirst("clara"); System.out.println(queue); queue.removelast(); queue.removelast(); System.out.println(queue); Percobaan 5 : Penggunaan Class Vector import java.util.vector; public class VectorExample { Vector<String> vc=new Vector<String>(); //<E> Element type of Vector e.g. String, Integer, Object... // add vector elements vc.add("vector Object 1"); vc.add("vector Object 2"); vc.add("vector Object 3"); vc.add("vector Object 4"); vc.add("vector Object 5"); // add vector element at index vc.add(3, "Element at fix position"); // vc.size() inform number of elements in Vector System.out.println("Vector Size :"+vc.size()); // get elements of Vector for(int i=0;i<vc.size();i++) { System.out.println("Vector Element "+i+" :"+vc.get(i)); Percobaan 6 : Penggunaan Iterator import java.util.*; class IteratorDemo { public static void main(string args[]) { // create an array list 25

ArrayList al = new ArrayList(); // add elements to the array list al.add("c"); al.add("a"); al.add("e"); al.add("b"); al.add("d"); al.add("f"); // use iterator to display contents of al System.out.print("Original contents of al: "); Iterator itr = al.iterator(); while (itr.hasnext()) { Object element = itr.next(); System.out.print(element + " "); System.out.println(); // modify objects being iterated ListIterator litr = al.listiterator(); while (litr.hasnext()) { Object element = litr.next(); litr.set(element + "+"); System.out.print("Modified contents of al: "); itr = al.iterator(); while (itr.hasnext()) { Object element = itr.next(); System.out.print(element + " "); System.out.println(); // now, display the list backwards System.out.print("Modified list backwards: "); while (litr.hasprevious()) { Object element = litr.previous(); System.out.print(element + " "); System.out.println(); Percobaan 7 : Penggunaan Enumeration import java.util.vector; import java.util.enumeration; public class EnumerationTester { 26

public static void main(string args[]) { Enumeration days; Vector daynames = new Vector(); daynames.add("sunday"); daynames.add("monday"); daynames.add("tuesday"); daynames.add("wednesday"); daynames.add("thursday"); daynames.add("friday"); daynames.add("saturday"); days = daynames.elements(); while (days.hasmoreelements ()) System.out.println(days.nextElement()); Percobaan 8 : Membuat Array List dari Enumerasi public class CreateArrayListFromEnumerationExample { //create a Vector object Vector v = new Vector(); //Add elements to Vector v.add("a"); v.add("b"); v.add("d"); v.add("e"); v.add("f"); System.out.println("Vector contains : " + v); //Get Enumeration over Vector Enumeration e = v.elements(); //Create ArrayList from Enumeration of Vector ArrayList alist = Collections.list(e); System.out.println("Arraylist contains : " + alist); Percobaan 9 : Mengkopikan element dari ArrayList ke Vector import java.util.arraylist; import java.util.collections; import java.util.vector; public class CopyElementsOfArrayListToVectorExample { 27

//create an ArrayList object ArrayList arraylist = new ArrayList(); //Add elements to Arraylist arraylist.add("1"); arraylist.add("4"); arraylist.add("2"); arraylist.add("5"); arraylist.add("3"); //create a Vector object Vector v = new Vector(); //Add elements to Vector v.add("a"); v.add("b"); v.add("d"); v.add("e"); v.add("f"); v.add("g"); v.add("h"); System.out.println("Before copy, Vector Contains : " + v); //copy all elements of ArrayList to Vector using copy method of Collections class Collections.copy(v,arrayList); System.out.println("After Copy, Vector Contains : " + v); Percobaan 10 : Menambahkan elemen yang tersimpan di Collection pada ArrayList import java.util.arraylist; import java.util.vector; public class AppendAllElementsOfOtherCollectionToArrayListExample { //create an ArrayList object ArrayList arraylist = new ArrayList(); //Add elements to Arraylist arraylist.add("1"); arraylist.add("2"); arraylist.add("3"); 28

//create a new Vector object Vector v = new Vector(); v.add("4"); v.add("5"); //append all elements of Vector to ArrayList arraylist.addall(v); //display elements of ArrayList System.out.println("After appending all elements of Vector, ArrayList contains.."); for (int i = 0; i < arraylist.size(); i++) { System.out.println(arrayList.get(i)); Percobaan 11 : Memahami Penggunaan dari class PriorityQueue import java.util.*; public class PriorityQueueDemo { PriorityQueue<String> stringqueue; public static void main(string[] args){ stringqueue = new PriorityQueue<String>(); stringqueue.add("ab"); stringqueue.add("abcd"); stringqueue.add("abc"); stringqueue.add("a"); //don't use iterator which may or may not //show the PriorityQueue's order while(stringqueue.size() > 0) System.out.println(stringQueue.remove()); Percobaan 12 : Memahami Penggunaan dari class PriorityQueue dan data yang tersimpan dalam obyek PriorityQueue mengimplementasikan interface Comparator. import java.util.comparator; import java.util.priorityqueue; public class PQueueTest { 29

PriorityQueue<Integer> pqueue = new PriorityQueue<Integer>(10, new Comparator<Integer>() { public int compare(integer int1, Integer int2) { boolean flag1 = isprime(int1); boolean flag2 = isprime(int2); ); if (flag1 == flag2){ return int1.compareto(int2); else if (flag1) { return -1; else if(flag2) { return 1; return 0; pqueue.add(1); pqueue.add(5); pqueue.add(6); pqueue.add(4); pqueue.add(2); pqueue.add(9); pqueue.add(7); pqueue.add(8); pqueue.add(10); pqueue.add(3); while(true) { Integer head = pqueue.poll(); if(head == null) { break; System.out.print(head + " <-- "); /** * * @param n * @return */ public static boolean isprime(int n) { if (n <= 1) { return false; if (n == 2) { return true; if (n % 2 == 0) { return false; long m = (long) Math.sqrt(n); 30

for (long i = 3; i <= m; i += 2) { if (n % i == 0) { return false; return true; Percobaan 13 : Penggunaan HashMap, menambahkan data, menghapus data tertentu dan menghapus semua data pada objek HashMap. import java.util.hashmap; public class RemoveValueFromHashMapExample { //create HashMap object HashMap hmap = new HashMap(); //add key value pairs to HashMap hmap.put("1","one"); hmap.put("2","two"); hmap.put("3","three"); Object obj = hmap.remove("2"); System.out.println(obj + " Removed from HashMap"); hmap.clear(); System.out.println("Total key value pairs in HashMap are : " + hmap.size()); Percobaan 14 : Melakukan iterasi pada value HashMap import java.util.collection; import java.util.hashmap; import java.util.iterator; public class IterateValuesOfHashMapExample { //create HashMap object HashMap hmap = new HashMap(); //add key value pairs to HashMap hmap.put("1","one"); hmap.put("2","two"); hmap.put("3","three"); 31

Collection c = hmap.values(); //obtain an Iterator for Collection Iterator itr = c.iterator(); //iterate through HashMap values iterator while(itr.hasnext()) System.out.println(itr.next()); Percobaan 15 : Mendapatkan key, melakukan iterasi pada key dan menghapus key tertentu pada objek HashMap public class GetSetViewOfKeysFromHashMapExample { //create HashMap object HashMap hmap = new HashMap(); //add key value pairs to HashMap hmap.put("1","one"); hmap.put("2","two"); hmap.put("3","three"); Set st = hmap.keyset(); System.out.println("Set created from HashMap Keys contains :"); //iterate through the Set of keys Iterator itr = st.iterator(); while(itr.hasnext()) System.out.println(itr.next()); //remove 2 from Set st.remove("2"); Percobaan 16 : Mengecek apakah objek HashMap mempunyai value tertentu. import java.util.hashmap; public class CheckValueOfHashMapExample { //create HashMap object HashMap hmap = new HashMap(); //add key value pairs to HashMap 32

hmap.put("1","one"); hmap.put("2","two"); hmap.put("3","three"); boolean blnexists = hmap.containsvalue("two"); System.out.println("Two exists in HashMap? : " + blnexists); Percobaan 17 : Mengecek apakah objek HashMap berisi key tertentu import java.util.hashmap; public class CheckKeyOfHashMapExample { //create HashMap object HashMap hmap = new HashMap(); //add key value pairs to HashMap hmap.put("1","one"); hmap.put("2","two"); hmap.put("3","three"); boolean blnexists = hmap.containskey("3"); System.out.println("3 exists in HashMap? : " + blnexists); Percobaan 18 : Menambahkan objek Hash Map ke objek Hashtable dan penggunaan Enumeration. import java.util.enumeration; import java.util.hashtable; import java.util.hashmap; public class CreateHashtableFromHashMap { //create HashMap HashMap hmap = new HashMap(); //populate HashMap hmap.put("1","one"); hmap.put("2","two"); hmap.put("3","three"); 33

//create new Hashtable Hashtable ht = new Hashtable(); //populate Hashtable ht.put("1","this value would be REPLACED!!"); ht.put("4","four"); //print values of Hashtable before copy from HashMap System.out.println("Hashtable contents before copy"); Enumeration e = ht.elements(); while(e.hasmoreelements()) System.out.println(e.nextElement()); ht.putall(hmap); //display contents of Hashtable System.out.println("Hashtable contents after copy"); e = ht.elements(); while(e.hasmoreelements()) System.out.println(e.nextElement()); Percobaan 19 : Mendapatkan key terendah dan tertinggi dari objek TreeMAp. import java.util.treemap; public class GetLowestHighestKeyTreeMapExample { //create TreeMap object TreeMap treemap = new TreeMap(); //add key value pairs to TreeMap treemap.put("1","one"); treemap.put("3","three"); treemap.put("2","two"); treemap.put("5","five"); treemap.put("4","four"); System.out.println("Lowest key Stored in Java TreeMap is : " + treemap.firstkey()); System.out.println("Highest key Stored in Java TreeMap is : " + treemap.lastkey()); 34

Percobaan 20 : Mendapatkan TailMap dari objek TreeMap import java.util.sortedmap; import java.util.treemap; public class GetTailMapFromTreeMapExample { //create TreeMap object TreeMap treemap = new TreeMap(); //add key value pairs to TreeMap treemap.put("1","one"); treemap.put("3","three"); treemap.put("2","two"); treemap.put("5","five"); treemap.put("4","four"); SortedMap sortedmap = treemap.tailmap("2"); System.out.println("Tail Map Contains : " + sortedmap); Percobaan 21 : Mendapatkan SubMap dari objek TreeMap import java.util.treemap; import java.util.sortedmap; public class GetSubMapFromTreeMapExample { //create TreeMap object TreeMap treemap = new TreeMap(); //add key value pairs to TreeMap treemap.put("1","one"); treemap.put("3","three"); treemap.put("2","two"); treemap.put("5","five"); treemap.put("4","four"); SortedMap sortedmap = treemap.submap("2","5"); System.out.println("SortedMap Contains : " + sortedmap); Percobaan 22 : Mendapatkan HeadMap dari objek TreeMap import java.util.sortedmap; import java.util.treemap; 35

public class GetHeadMapFromTreeMapExample { //create TreeMap object TreeMap treemap = new TreeMap(); //add key value pairs to TreeMap treemap.put("1","one"); treemap.put("3","three"); treemap.put("2","two"); treemap.put("5","five"); treemap.put("4","four"); SortedMap sortedmap = treemap.headmap("3"); System.out.println("Head Map Contains : " + sortedmap); E. LATIHAN Latihan 1 : Penerapan konsep himpunan pada interface Set Terdapat sebuah himpunan A = {1,2,3,4,5 B = {5,6,7,8,9,10 Menggunakan class yang mengimplementasikan Interface Set, dapatkah output seperti : A B A B A U B A C B Latihan 2 : Memahami penggunaan interface List. Buatlah obyek List, dengan data bertipe String lakukan langkah berikut : Tampilkan data yang terdapat pada list. Baliklah data yang terdapat pada list dan tampilkan. Acaklah data tersebut dan tampilkan. Urutkan data tersebut dan tampilkan. 36

Latihan 3 : Memahami penggunaan interface List (2) Buatlah class Mahasiswa dengan informasi nrp dan nama(bertipe String). Buatlah obyek List, dengan data bertipe String lakukan langkah berikut : Tampilkan data yang terdapat pada list. Baliklah data yang terdapat pada list dan tampilkan. Acaklah data tersebut dan tampilkan. Urutkan data tersebut, jangan lupa untuk mengimplementasikan interface Comparable/Comparator pada class Mahasiswa dan tampilkan. Latihan 4 : Penggunaan class LinkedList pada interface List. Buatlah dua obyek List (ArrayList) yaitu obyek warna dan warnadihapus. Obyek ini berisi warna-warna, buatlah sebagian ada yang sama. Lakukan penghapusan data yang terdapat pada obyek warna yang sama dengan data warna yang terdapat pada obyek warnadihapus, selanjutnya tampilkan. Warna : [MAGENTA, RED, WHITE, BLUE, CYAN] Warna yang dihapus : [RED, WHITE, BLUE] Output : Warna : [MAGENTA, CYAN] Latihan 5 : Pengurutan data mahasiswa berdasarkan nilai. Buatlah class Mahasiswa dengan informasi : Nrp (String) Nama(String) Nilai(Float) Terdapat 10 data mahasiswa yang tersimpan dalam queue, set nilai secara random antara 60-100, lakukan pengurutan data mahasiswa berdasarkan nilai tersebut! Latihan 6 : Mengetahui penggunaan class TreeMap 37

Inputkan kalimat, buatlah sebagian kata-kata dalam kalimat tersebut ada yang sama, output berupa kata (sebagai key) dan jumlah kata (value) dalam kalimat tersebut yang tersimpan dalam TreeMap, selanjutnya tampilkan. Input : televisi kursi televisi kursi meja televisi monitor. Output : kursi = 2 meja = 1 monitor = 1 televisi = 3 Latihan 7 : Mengetahui penggunaan class TreeMap Melanjutkan latihan 1, tampilkan : Tampilkan nilai terendah dan tertinggi Output : Nilai terendah : Meja = 1 Nilai tertinggi : Televisi = 3 Tampilkan berdasarkan key dengan awalan m. Output : meja = 1 monitor = 1 Latihan 8 : Ibukota propinsi di Indonesia Terdapat objek TreeMap 1 yang berisi pulau(sebagai key) beserta propinsipropinsinya(value). Terdapat objek TreeMap 2 yang berisi propinsi(sebagai key) beserta ibukotanya(value). Tampilkan : Ibukota propinsi yang terdapat di pulau Sumatera Ibukota propinsi yang terdapat di pulau Jawa Ibukota propinsi yang berawalan S (Sumatera Utara, Sumatera Barat, Sumatera Selatan, Sulawesi Barat, Sulawesi Tengah, Sulawesi Utara, Sulawesi Tenggara, Sulawesi Selatan) F. LAPORAN RESMI Kerjakan hasil percobaan(d) dan latihan(e) di atas dan tambahkan analisa. 38