1 ARRAY DAN ARGUMEN BARIS PERINTAH Array adalah obyek yang dapat digunakan untuk menyimpan sejumlah data. Elemen yang disimpan pada array dapat berupa tipe primitif (misalnya int) ataupun instan kelas (obyek). Untuk menciptakan array digunakan langkah berikut : 1. Mendeklarasikan variabel untuk merujuk ke array (selanjutnya disebut variabel array) 2. Menciptakan obyek array dan menugaskannya ke variabel yang dideklarasikan pada langkah pertama Variabel Array KOTA Dideklarasikan melalui String KOTA; Obyek Array data-1 data-2 Dialokasikan melalui KOTA = new String[2]; MENDEKLARASIKAN VARIABEL ARRAY Pendeklarasian variabel array dilakukan dengan bentuk : tipeprimitif NamaVariabelArray[ ]; atau namakelas NamaVariabelArray[ ]; Misalnya : String[ ] kota; int[ ] nilai; Pernyataan String [ ] kota; dapat ditulis menjadi String kota[ ]; namun bentuk pertama lebih memberikan kejelasan karena yang berupa array bukanlah variabel itu sendiri melainkan yang dirujuknya. MENCIPTAKAN OBYEK ARRAY Penciptaan obyek array dan penugasan obyek ke variabel array dilakukan dengan menggunakan kata kunci new. Bentuk penulisan : namakelas NamaVariabelArray = new namakelas[jumlah elemen]; atau tipeprimitif NamaVariabelArray = new tipeprimitif[jumlah elemen]; Misalnya : kota = new String[5]; nilai = new int [3]; Dua pernyataan : String [ ] kota; kota = new String[5] dapat disingkat String [ ] kota = new String[5];
2 MENGAKSES ELEMEN ARRAY Elemen array dapat diakses melalui notasi : NamaVariabelArray[subskrip] Subskrip berupa nomor elemen dimana elemen pertama dimulai dari 0 (nol). ARRAY ELEMEN SUBSKRIP kota[0] Jakarta 0 kota[1] Bandung 1 Kota[2] Semarang 2 //berkas : larik1.java public class larik1 String[] kota = new String[5]; //mengisi elemen array kota[0]="jakarta"; kota[1]="bandung"; kota[2]="semarang"; kota[3]="medan"; kota[4]="yogyakarta"; //menampilkan elemen array System.out.println("Elemen Array-1 = "+kota[0]); System.out.println("Elemen Array-2 = "+kota[1]); System.out.println("Elemen Array-3 = "+kota[2]); System.out.println("Elemen Array-4 = "+kota[3]); System.out.println("Elemen Array-5 = "+kota[4]); Elemen Array-1 = Jakarta Elemen Array-2 = Bandung Elemen Array-3 = Semarang Elemen Array-4 = Medan Elemen Array-5 = Yogyakarta Pemberian nilai pada array dapat dilakukan sewaktu obyek array diciptakan, misalnya : String[ ] kota = Jakarta, Bandung, Semarang, Medan, Yogyakarta ; //berkas : larik2.java public class larik2 String[] kota = "Jakarta", "Bandung", "Semarang", "Medan", "Yogyakarta"; System.out.println("Elemen Array-1 = "+kota[0]); System.out.println("Elemen Array-2 = "+kota[1]); System.out.println("Elemen Array-3 = "+kota[2]); System.out.println("Elemen Array-4 = "+kota[3]);
3 System.out.println("Elemen Array-5 = "+kota[4]); Elemen Array-1 = Jakarta Elemen Array-2 = Bandung Elemen Array-3 = Semarang Elemen Array-4 = Medan Elemen Array-5 = Yogyakarta Jumlah elemen array dapat diketahui dengan menggunakan variabel instan length milik obyek array, misalnya : kota.length (akan menghasilkan jumlah elemen yang dirujuk oleh kota). Selain itu untuk memasukkan atau menampilkan elemen array dapat menggunakan pernyataan for. //berkas : larik3.java public class larik3 String[] hari = "Senin","Selasa","Rabu","Kamis","Jumat","Sabtu","Minggu"; for(int i=0; i< hari.length; i++) System.out.println("Hari ke-"+i+" adalah "+hari[i]); System.out.println("Jumlah hari dalam seminggu = "+hari.length+" hari"); Elemen Array ke-0 adalah Senin Elemen Array ke-1 adalah Selasa Elemen Array ke-2 adalah Rabu Elemen Array ke-3 adalah Kamis Elemen Array ke-4 adalah Jumat Elemen Array ke-5 adalah Sabtu Elemen Array ke-6 adalah Minggu Jumlah hari dalam seminggu = 7 hari ARRAY MULTIDIMENSI Java mendukung array multidimensi melalui pendekatan "array dari array". Misalnya : int [ ] [ ] Nilai = new int [2] [3] ; merupakan implementasi array berdimensi dua dimana terdapat 2 baris dan 3 kolom sebagaimana terlihat pada gambar dibawah ini : subskrip kolom Nilai[0][0] Nilai[0][1] Nilai[0][2] Nilai[1][0] Nilai[1][1] Nilai[1][2] subskrip baris Pemberian nilai pada array dua dimensi dilakukan dengan : nilai [baris ] [kolom ] = data;
4 //berkas : larik4.java public class larik4 int [][] nilai = new int [2][3]; int i,j; nilai[0][0]=1; nilai[0][1]=2; nilai[0][2]=3; nilai[1][0]=4; nilai[1][1]=5; nilai[1][2]=6; for(i=0; i< 2; i++) for (j=0; j< 3; j++) System.out.print(nilai[i][j]+" "); System.out.println(" "); 1 2 3 4 5 6 Argumen baris perintah pada Java dapat diambil dari variabel array args. Adapun jumlah argumen dapat diperoleh melalui variabel instan pada kelas String yang bernama length. //nama file berkas : arraytampil.java public class arraytampil public static void main(string[] args) for (int i=0;i< args.length;i++) System.out.println("Kata ke-"+(i+1)+" adalah : "+args[i]); C:\j2sdk1.4.2_12\bin>java arraytampil Selamat Belajar Java Kata ke-1 adalah : Selamat Kata ke-2 adalah : Belajar Kata ke-3 adalah : Java Deklarasi array dua dimensi dapat dilakukan dengan menggunakan konstruksi seperti contoh berikut : //nama file berkas : arraykota.java public class arraykota public static void main(string[] args)
5 String [][] kota = "Indonesia", "Jakarta", "Filipina","Manila", "Jepang","Tokyo", "Iran","Teheran", "Mesir","Kairo"; for(int i=0; i<kota.length;i++) System.out.println("Ibukota "+kota[i][0]+" adalah "+kota[i][1]); Ibukota Indonesia adalah Jakarta Ibukota Filipina adalah Manila Ibukota Jepang adalah Tokyo Ibukota Iran adalah Teheran Ibukota Mesir adalah Kairo Array dapat dikombinasikan dengan menggunakan program input. //nama file berkas : inputarray.java import java.io.*; public class inputarray public static void main(string[] args) throws Exception double [] x = new double[100]; DataInputStream karakter=new DataInputStream (System.in); System.out.print("Masukkan Jumlah Data : "); String jumlah=karakter.readline(); int data = Integer.valueOf(jumlah).intValue(); for(int i=0; i< data; i++) System.out.print("Nilai Ke-"+(i+1)+" = "); String str=karakter.readline(); double nilai = Double.valueOf(str).doubleValue(); x[i]=nilai; System.out.println("Tabel Nilai"); System.out.println("============================="); System.out.println("Nilai-X Nilai X*X Nilai 1/X"); System.out.println("============================="); for(int i=0; i< data; i++) System.out.println(x[i]+" "+(x[i]*x[i])+" "+(1/x[i])); System.out.println("=============================");
6 Masukkan Jumlah Data : 5 Nilai Ke-1 = 1 Nilai Ke-2 = 2 Nilai Ke-3 = 3 Nilai Ke-4 = 4 Nilai Ke-5 = 5 Tabel Nilai ============================= Nilai-X Nilai X*X Nilai 1/X ============================= 1.0 1.0 1.0 2.0 4.0 0.5 3.0 9.0 0.3333333 4.0 16.0 0.25 5.0 25.0 0.2 ============================= TUGAS : 1. Buat program untuk mengurutkan data dengan menggunakan array 2. Buat program array untuk menjumlah dua buah matriks ber-ordo 2x2 3. Buat program array untuk membuat tabel penjualan dengan ketentuan sebagai berikut : INPUT : Masukkan Bulan Penjualan : Masukkan jumlah data :... Nama Barang ke-... :... Jumlah :... Harga Rp. :... PROSES : Total Beli = Jumlah * Harga Total Barang = total data input Total Penjualan = Total Penjualan + Total Beli OUTPUT : LAPORAN PENJUALAN PT. YAI BULAN :... ============================================= NO NAMA BARANG JUMLAH HARGA TOTAL ============================================= 1???? 2???? 3???? dst ============================================= TOTAL BARANG : 3 TOTAL PENJUALAN :...