Praktikum KPLBO Collection I Oleh : Ade Sukendar [ade.sukendar@unpas.ac.id] Laboratorium Jurusan Teknik Informatika Universitas Pasundan 2014
Latihan 1 : Latihan praktikum ini bertujuan untuk memberikan contoh penggunaan collection dengan menggunakan array. Tulislah kode program dibawah ini dan perhatikan komentar yang ada di kode program tersebut. Buatlah kelas ArrayTipePrimitif seperti di bawah ini : ArrayTipePrimitif.java package p9.a; public class ArrayTipePrimitif { public static final int MAX_ELEMEN = 10; // deklarasi array int[] arr; // menciptakan objek array dengan elemen X arr = new int[max_elemen]; // Atau deklarasi + menciptakan objek array // int[] arr = new int[max_elemen]; // Mengisi nilai ke array arr[i] = (i+1); // Menampilkan isi nilai dari array System.out.print(arr[i]+ " "); Ubahlah kode program diatas sehingga menghasilkan output seperti ini : 1 3 5 7 9 Latihan 2 : Latihan ke dua ini yaitu melanjutkan dari latihan yang pertama dengan menambahkan kode program untuk membungkus proses terkait dengan array. Buatlah kelas ArrayTipePrimitif2 seperti di bawah ini : ArrayTipePrimitif2.java package p9.a; public class ArrayTipePrimitif2 { public static int MAX_ELEMEN = 10; private int[] arr; public ArrayTipePrimitif2() { arr = new int[max_elemen]; public ArrayTipePrimitif2(int maxelemen) { MAX_ELEMEN = maxelemen; arr = new int[max_elemen]; public void isiarray() { 2
arr[i] = (i+1); public void tampilarray() { System.out.print(arr[i]+ " "); ArrayTipePrimitif2 atp = new ArrayTipePrimitif2(); atp.isiarray(); atp.tampilarray(); Latihan 3 : Latihan ke tiga yaitu latihan penggunaan array yang telah menggunakan tipe objek. Tipe objek yang digunakan adalah kelas MataKuliah yang telah pernah dibuat dilatihan sebelumnya. Buatlah kelas MataKuliah seperti di bawah ini : MataKuliah.java package p9.b; / @author Ade Sukendar @version 1.2 @since 22/2/2014 public class MataKuliah { private String kode; private String nama; private int sks; private char indeksnilai; / Konstruktor public MataKuliah() { public MataKuliah(String kode, String nama, int sks, char indeksnilainilai) { setkode(kode); setnama(nama); setsks(sks); setindeksnilai(indeksnilainilai); / Method ini berfungsi untuk mendapatkan nilai dari indeks nilai matakuliah @return nilai indeks public int getnilaiindeks() { if (indeksnilai == 'A') { return 4; else if (indeksnilai == 'B') { return 3; 3
else if (indeksnilai == 'C') { return 2; else if (indeksnilai == 'D') { return 1; else if (indeksnilai == 'E') { return 0; return -1; / Method Setter & Getter disembunyikan Implementasi method ini harus tetap dibuat Buatlah kelas MataKuliah seperti di bawah ini : MataKuliah.java package p9.b; import p9.b.matakuliah; public class ArrayTipeObjek { public static int MAX_ELEMEN = 5; // deklarasi array MataKuliah[] arrmk; // menciptakan objek array arrmk = new MataKuliah[MAX_ELEMEN]; // Atau deklarasi array & menciptakan objek array // Matakuliah[] arrmk = new Matakuliah[MAX_ELEMEN]; // Mengisi objek matakuliah ke array for (int i = 0; i < arrmk.length; i++) { MataKuliah mk = new MataKuliah(""+ (i+1), "Matakuliah"+ i, 3, 'A'); arrmk[i] = mk; // Menampilkan objek matakuliah dari array for (int i = 0; i < arrmk.length; i++) { MataKuliah mk = arrmk[i]; System.out.print(""+ mk.getkode()+ ","+ mk.getnama()+ ","+ mk.getsks()); System.out.println(); Ubahlah kode program diatas sehingga menghasilkan output seperti di bawah ini : 3,Matakuliah4,4 4,Matakuliah5,4 5,Matakuliah6,4 6,Matakuliah7,4 4
Latihan 4 Latihan ke empat melanjutkan dari latihan yang ke tiga dengan menambahkan kode program untuk membungkus proses penanganan array dalam satu kelas. Berikut dibawah ini diagram kelas untuk menangani array. Buatlah kelas ArraysMatakuliah seperti di bawah ini : ArraysMatakuliah.java package p9.c; import p9.b.matakuliah; public class ArraysMatakuliah { public final static int MAX_ELEMEN = 10; private MataKuliah[] arr; / Konstruktor public ArraysMatakuliah() { arr = new MataKuliah[MAX_ELEMEN]; public ArraysMatakuliah(int maxelemen) { arr = new MataKuliah[maxElemen]; / Menambahkan objek matakuliah ke dalam array @param matakuliah public void add(matakuliah mk, int indeks) { arr[indeks] = mk; / Menghapus objek matakuliah dari array @param matakuliah @return delete dilakukan atau tidak public boolean delete(matakuliah mk) { // temukan matakuliah berdasarkan kode // jika ada, hapus objek matakuliah di array return false; 5
/ Menghapus objek matakuliah dari array @param indeks public void deletebyindeks(int indeks) { MataKuliah mk = arr[indeks]; if (mk!= null) { arr[indeks] = null; / Mencari objek matakuliah dari array berdasarkan kode matakuliah @param matakuliah @return true: objek matakuliah ada, false: objek matakuliah tidak ada public MataKuliah find(matakuliah mk) { return null; / Menampilkan atribut objek matakuliah dari array public void show() { MataKuliah mk = arr[i]; if (mk!= null) { System.out.print(""+ mk.getkode()+ ","+ mk.getnama()+ ","+ mk.getsks()); System.out.println(); / Mencari objek matakuliah dari array berdasarkan indeks array @param indeks @return objek matakuliah public MataKuliah get(int indeks) { return arr[indeks]; Buatlah kelas ArraysMatakuliahMain seperti di bawah ini : ArraysMatakuliahMain.java package p9.c; import p9.b.matakuliah; public class ArraysMatakuliahMain { ArraysMatakuliah am = new ArraysMatakuliah(); MataKuliah mk1 = new MataKuliah("IF123", "Alpro1", 4, 'A'); MataKuliah mk2 = new MataKuliah("IF124", "Alpro2", 3, 'B'); MataKuliah mk3 = new MataKuliah("IF125", "KPLBO", 3, 'B'); MataKuliah mk4 = new MataKuliah("IF126", "RKPPL", 2, 'A'); am.add(mk1, 0); am.add(mk2, 1); am.add(mk3, 2); am.add(mk4, 3); 6
am.show(); // Lengkapi kode program : // gunakan fungsi delete // tampilkan atribut objek dalam array // gunakan fungsi deletebyindeks // tampilkan atribut objek dalam array // gunakan fungsi find dengan : // objek matakuliah beratribut kode IF123 // objek matakuliah beratribut kode IF127 // gunakan fungsi get dan tampilkan atributnya Lengkapi kode program yang belum diimplementasikan! 7