MODUL 1 Array List [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

Modul I Array list



MODUL I ARRAY LIST 1.1 TUJUAN 1. Memberi pemahaman bagaimana mendeklarasikan sautu array list 2. Memasukkan data ke dalam suatu array list 3. Mengakses array list 4. Mengimplementasikannya untuk menyelesaikan suatu permasalahan 1.2 DASAR TEORI 1.2.1 Pengertian Array Array atau larik (dalam Bahasa Indonesia) adalah sebuah tipe data bentukan yang terdiri dari sejumlah komponen dengan tipe yang sama. Artinya, kita dapat menyimpan banyak data dalam satu variabel.



Analoginya seperti ini: Mari kita bayangkan bahwa array merupakan sebuah hotel yang memiliki beberapa kamar. Kemudian setiap kamar dikenal dengan index atau urutan angka. Intinya adalah: kita akan menyiapkan kamar dalam hotel dengan nomor index 0sekian. Untuk penggunaanya sendiri pengunjung dibagi berdasarkan nomor kamar hotel. Jika kita lihat lagi masalah diatas, kita tidak lagi membutuhkan banyak variabel untuk menyiman data yang sama. Namun kita hanya membutuhkan satu variabel saja. Ada beberapa hal yang perlu anda ketahu tentang array: 



Nomor index pada Array dimulai dari nol (0).







Array hanya mampu menyimpan data dengan tipe yang sama.







Artinya, semua isi array memiliki tipe data sama.



Praktikum Algoritma dan Struktur Data 2019



Modul I Array list



Ada dua jenis tipe data array: Array 1 dimensi Array 2 dimensi (multi dimensi) Jika array satu dimensi kita asumsikan sebagai deretan data maka array berdimensi dua mewakili suatu bentuk tabel atau matrik dimana indeks yang pertama menunjukkan baris kemudian indeks yang kedua menunjukkan kolom dari tabel atau matriks. Cara membuat array kosong : // cara pertama String[] nama; // cara kedua String nama[]; // cara ketiga dengan kata kunci new String[] nama = new String[5];



Array yang kosong siap diisi dengan data. Pastikan mengisinya dengan data yang sesuai dengan tipe datanya. Kita bisa mengisinya seperti ini : nama[0] = "Linda"; nama[1] = "Santi"; nama[2] = "Susan"; nama[3] = "Mila"; nama[4] = "Ayu";



Atau kalau tidak mau repot, kita bisa membuat array dan langsung mengisinya. String[] "Ayu"};



nama



=



{"Linda",



Praktikum Algoritma dan Struktur Data 2019



"Santi",



"Susan",



"Mila",



Modul I Array list



1.2.2 Pengertian Array List ArrayList adalah array dinamis yang bisa digunakan jika kita membutuhkan array dengan batas maksimum yang tak terbatas. Pada Java, setiap kelas adalah kelas turunan dari kelas yang bernama Object. Artinya setiap objek dapat dirujuk oleh variabel bertiipe Object. Semua objek dapat dimasukkan dalam array bertipe Object[]. Jika suatu subrutin memiliki parameter formal bertipe Object, maka objek apapun bisa diberikan kepada subrutin tersebut.ArrayList disimpan dalam paket java.util, jadi jika kita ingin menggunakan kelas ArrayList dalam sebuat program, kita harus memberikan “import java.util.ArrayList;” atau “import java.util.*;” di awal program kita. Misalkan anda ingin membuat sebuah ArrayList untuk menyimpan integerinteger. Anda dapat menggunakan ArrayList untuk menyimpan objek-objek Integer sebagai berikut : ArrayList list = new ArrayList();



1.2.3 Perbedaan Array Dengan Array List Array dan ArrayList adalah dua struktur data yang penting dan paling banyak digunakan pada program Java. Array adalah struktur data dasar yang merupakan bagian dari Java sejak awal. ArrayList adalah class dalam Java Collection Framework yang diperkenalkan sejak JDK 1.2. untuk lebih mudahnya, Anda bisa menggambarkan ArrayList sebagai versi lanjutan dari Array. Karena, array adalah struktur data dengan ukuran tetap maka Anda tidak dapat mengubah ukurannya setelah dibuat. Nah, untuk mengatasi kekurangan array ini maka ArrayList diperkenalkan di Java. ArrayList secara otomatis akan mengubah ukurannya saat Anda menambahkan elemen lebih banyak dari kapasitasnya. Objek-objek ArrayList dapat digunakan seperti array. Namun, terdapat banyak perbedaan. Seperti anda ketahui, ketika array di buat, maka ukurannya tidak bisa di ubah. Untuk lebih jelasnya, perbedaan antara ArrayList dan array bisa anda lihat melalui tabel berikut ini : Praktikum Algoritma dan Struktur Data 2019



Modul I Array list



Operasi & Keterangan Membuat sebuah array atau ArrayList Mengakses elemen Mengupdate elemen Mengembalikan ukuran Menambahkan suatu elemen baru Memasukkan suatu elemen pada index tertentu Menghapus suatu elemen Menghapus suatu elemen Menyimpan Didefinisikan pada Java



Array String[] a = new String[5]



ArrayList list = new ArrayList();



a[index]



list.get(index);



a[index] = “jeruk”;



list.set(index, “jeruk”);



a.length



list.size(); list.add(“jeruk”); list.add(index, “jeruk”); list.remove(index); list.remove(Object);



Objek dan tipe primitif Sebagai data struktur fundamental



Ukuran



Tetap



Tipe data yang disimpan



Menyimpan data dari satu tipe



Sinkronisasi



Tidak dapat disinkronisasi



Multidimensi



Dapat multi dimensi



Iterasi



Menggunakan for loop atau for each loop



Safety tipe



ArrayList



Array tidak mendukung tipe generik. Oleh karena itu jika anda menambahkan elemen yang tidak kompatibel pada array



Praktikum Algoritma dan Struktur Data 2019



Hanya objek Milik dari Collections framework Bisa bertambah atau menyusut karena elemen bisa ditambahkan atau di hilangkan Dapat menyimpan tipe data yang heterogen Versi yang disinkronisasi bisa diperoleh Hanya satu dimensi ArrayList menyediakan iterator. Anda juga dapat menggunakan for loop atau for each loop ArrayList mendukung tipe generik. Sehingga akan memastikan



Modul I Array list



maka compiler  tidak akan menunjukkan error apapun. Namun, pada saat run time Anda akan mendapatkan ArrayStoreException . Ini artinya setiap elemen di cek pada saat runtime.



Praktikum Algoritma dan Struktur Data 2019



safety tipe pada compilation time. Jadi tipe setiap elemen akan di cek saat compile time. Artinya jika anda mencoba menambahkan elemen yang tidak kompatibel maka compiler akan langsung menunjukkan error



Modul I Array list



1.3 JOBSHEET No. Latihan Script package p1algodatjobsheet1; 1 Buatlah program menggunakan import java.util.ArrayList; arraylist dengan mengisi nama, public class P1algodatjobsheet1 { public static void main(String[] args) { nim, jurusan, umur, ArrayList identitas = new ArrayList(); alamat identitas.add("Lalu Fiqihilmi"); identitas.add("F1B016045"); identitas.add("Teknik Elektro"); identitas.add(20); identitas.add("Perumnas");



Analisa ArrayList identitas = new ArrayList(); berfungsi untuk



menginisialisasi objek identitas sebagai suatu arraylist. identitas.add("Lalu Fiqihilmi"); berfungsi



untuk menambahkan nilai kedalam arraylist.



} }



2



Buatlah program menggunakan 2 arraylist yang dimana masingmasing arraylist terdiri dari 3 angka yang berbeda dan kemudian melakukan operasi kali pada tiap-tiap angka pada arraylist yang berbeda



package p1algodatjobsheet2; import java.util.ArrayList; public class P1algodatjobsheet2 { public static void main(String[] args) { ArrayList a1 = new ArrayList(); ArrayList a2 = new ArrayList(); a1.add(1); a1.add(2); a1.add(3); a2.add(4); a2.add(5); a2.add(6); int hasil=a1.get(0)*a2.get(0); System.out.println(hasil); hasil=a1.get(0)*a2.get(1);



Praktikum Algoritma dan Struktur Data 2019



pada script disamping 2 arraylist dibuat yaitu a1 dan a2 yang masing-masing diisikan 3 angka yang berbeda-beda. Untuk mendapatkan hasil perkalian dari setiap angka pada array list dilakukan dengan mengambil nilai dari array list dengan method get(nomor_indeks);



I-6



Modul I Array list System.out.println(hasil); hasil=a1.get(0)*a2.get(2); System.out.println(hasil); hasil=a1.get(1)*a2.get(0); System.out.println(hasil); hasil=a1.get(1)*a2.get(1); System.out.println(hasil); hasil=a1.get(1)*a2.get(2); System.out.println(hasil); hasil=a1.get(2)*a2.get(0); System.out.println(hasil); hasil=a1.get(2)*a2.get(1); System.out.println(hasil); hasil=a1.get(2)*a2.get(2); System.out.println(hasil); } }



3



Buatlah program dengan arraylist yang berisi biodata dan buatlah fitur edit untuk mengubah biodata yang diinginkan secara dinamis



package p1algodatjobsheet3; import java.util.ArrayList; import java.util.Scanner; public class P1algodatjobsheet3 { public static void main(String[] args) { ArrayList biodata = new ArrayList(); biodata.add("Lalu Fiqihilmi"); biodata.add("F1B016045"); biodata.add("20"); System.out.println(biodata); System.out.println("Masukkan nomor indeks yang ingin di ubsh"); Scanner a = new Scanner (System.in); System.out.print("Pilih = ");



Praktikum Algoritma dan Struktur Data 2019



pada script disamping class scanner digunakan untuk memasukkan nilai dari variabel pilih yang akan menentukan indeks ke berapa yang akan terubah pada arraylist. Kemudian scanner digunakan kembali untuk memasukkan data yang akan mengisi arraylist.



I-7



Modul I Array list int pilih = a.nextInt(); String isi; Scanner b = new Scanner (System.in); System.out.print("Isi = "); isi = b.nextLine(); biodata.set(pilih, isi); System.out.println(biodata); } }



4



Buatlah program dengan arraylist yang berisi biodata dan buatlah fitur hapus untuk menghapus biodata yang diinginkan secara dinamis dan tambah kembali biodata yang telah dihapus



package p1algodatjobsheet4; import java.util.ArrayList; import java.util.Scanner; public class P1algodatjobsheet4 { public static void main(String[] args) { ArrayList biodata = new ArrayList(); biodata.add("Lalu Fiqihilmi"); biodata.add("F1B016045"); biodata.add("20"); System.out.println(biodata); System.out.println("Masukkan nomor indeks yang ingin di hapus"); Scanner a = new Scanner (System.in); System.out.print("Pilih = "); int pilih = a.nextInt(); String isi; biodata.remove(pilih); System.out.println(biodata); } }



Praktikum Algoritma dan Struktur Data 2019



pada script disamping class scanner digunakan untuk memasukkan nilai dari variabel pilih yang akan menentukan indeks ke berapa yang akan dihapus pada arraylist. Kemudian System.out.println(biodata);



digunakan untuk menampilkan isi dari arraylist.



I-8



Modul I Array list



5



6



Buatlah program dengan arraylist dengan menambahkan fitur format data



Buatlah program untuk menambah biodata secara dinamis dengan



package p1algodatjobsheet5; import java.util.ArrayList; import java.util.Scanner; public class P1algodatjobsheet5 { public static void main(String[] args) { ArrayList biodata = new ArrayList(); biodata.add("Lalu Fiqihilmi"); biodata.add("F1B016045"); biodata.add("20"); System.out.println(biodata); System.out.println("Format data? (1/0)"); Scanner a = new Scanner (System.in); System.out.print("Masukan = "); int pilih = a.nextInt(); String isi; if (pilih==1){ biodata.clear(); System.out.println("Data Kosong"); } else if(pilih==0){ System.out.println(biodata); } else{ System.out.println("angka yang dimasukkan salah"); } } } package p1algodatjobsheet6; import java.util.ArrayList; import java.util.Scanner;



pada script disamping class scanner digunakan untuk memasukkan nilai dari variabel pilih yang akan menentukan apakah isi dari arraylist akan dihapus atau tidak. Jika angka yang dimasukkan adalah 1 maka isi dari arraylist akan dihapus. Jika angka yang dimasukkan adalah 0 maka isi dari arraylist tidak akan dihapus.



script disamping merupakan program yang memiliki 3 pilihan menu. Class scanner digunakan untuk memasukkan pilihan menu.



public class P1algodatjobsheet6 { Praktikum Algoritma dan Struktur Data 2019



I-9



Modul I Array list



menambahkan fitur ubah, hapus, dan format data



public static void main(String[] args) { ArrayList biodata = new ArrayList(); System.out.println("Data :"); biodata.add("Lalu Fiqihilmi"); biodata.add("F1B016045"); biodata.add("20"); System.out.println(biodata); System.out.println("Menu"); System.out.println("1. Ubah data"); System.out.println("2. Hapus data"); System.out.println("3. Format data"); System.out.println("Masukkan nomor menu yang ingin di eksekusi"); Scanner a = new Scanner (System.in); System.out.print("Pilih = "); int pilih = a.nextInt(); String isi; if (pilih==1){ System.out.println("Masukkan nomor indeks yang ingin di ubsh"); Scanner e = new Scanner (System.in); System.out.print("Pilih = "); int pilih1 = e.nextInt(); Scanner b = new Scanner (System.in); System.out.print("Isi = "); isi = b.nextLine(); biodata.set(pilih1, isi); System.out.println(biodata); } else if(pilih==2){ System.out.println("Masukkan nomor indeks yang ingin di hapus"); Scanner f = new Scanner (System.in); System.out.print("Pilih = "); int pilih2 = f.nextInt(); biodata.remove(pilih2); System.out.println(biodata);



Praktikum Algoritma dan Struktur Data 2019



Jika angka yang dimasukkan adalah 1 maka menu ubah data yang ditampilkan. Jika angka yang dimasukkan adalah 2 maka menu hapus data yang ditampilkan. Jika angka yang dimasukkan adalah 3 maka menu format data yang ditampilkan.



I - 10



Modul I Array list } else if(pilih==3){ biodata.clear(); System.out.println("Data Kosong"); } else{ System.out.println("Angka yang dimasukkan salah");



}



} }



Praktikum Algoritma dan Struktur Data 2019



I - 11



Modul I Array list



1.4 Kesimpulan 1. Mendeklarasikan array list dilakukan dengan script sebagai berikut : ArrayList nama_arraylist = new ArrayList();



2. Memasukkan data kedalam suatu array list dilakukan dengan script sebagai berikut : nama_arraylist.add("isi");



3. Mengakses array list dilakukan dengan script sebagai berikut : nama_arraylist.get(nomor_indeks);



Praktikum Algoritma dan Struktur Data 2019



Modul I Array list



DAFTAR PUSTAKA Anonym.2019.Modul Praktikum Algoritma dan Struktur Data Lab Jaringan dan Komputer Teknik Elektro Fakultas Teknik Univesitas Mataram SIANIPAR,RH.2015.Pemrograman Java Untuk Programer,ANDI,Yoyakarta Ramdhani,cipta.2015.Dasar Alogaritma dan Struktur Data Bahasa Java.ANDI PUBLISHER,Yogyakarta



Praktikum Algoritma dan Struktur Data 2019



Modul I Array list



LAMPIRAN No. Latihan 1 Buatlah



Flowchart



Screenshot



program menggunakan arraylist dengan mengisi nama, nim, jurusan, umur, alamat



Praktikum Algoritma dan Struktur Data 2019



I - 14



Modul I Array list



2



Buatlah program menggunakan 2 arraylist yang dimana masingmasing arraylist terdiri dari 3 angka yang berbeda dan kemudian melakukan operasi kali pada tiap-tiap angka pada arraylist yang berbeda



Praktikum Algoritma dan Struktur Data 2019



I - 15



Modul I Array list



3



Buatlah program dengan arraylist yang berisi biodata dan buatlah fitur edit untuk mengubah biodata yang diinginkan



4



secara dinamis Buatlah program dengan arraylist yang berisi biodata dan buatlah fitur hapus untuk menghapus biodata yang diinginkan secara dinamis dan tambah



Praktikum Algoritma dan Struktur Data 2019



I - 16



Modul I Array list



kembali biodata yang telah 5



dihapus Buatlah program dengan arraylist dengan menambahkan fitur format data



6



Buatlah program untuk menambah biodata secara dinamis dengan menambahkan fitur ubah, hapus, dan format data



Praktikum Algoritma dan Struktur Data 2019



I - 17



Modul I Array list



Praktikum Algoritma dan Struktur Data 2019



I - 18