As’ad Djamalilleil http://kampusku.my.id asad.kom@gmail.com Array As’ad Djamalilleil http://kampusku.my.id asad.kom@gmail.com
Array Java menyediakan tipe data array yang dapat digunakan untuk menyimpan serangkaian data sejenis sehingga dapat ditangani secara kolektif maupun individual Array di Java bersifat dinamis serta disediakan pula class yang dapat digunakan untuk mempermudah manipulasi array
Perhatikan kode Pascal berikut: Var A : Integer; B : array[1..A] of Byte; Begin End. Hasil kompilasi akan memberikan pesan error “Cannot evaluate this expression” Error tersebut disebabkan karena compiler Pascal mengharapkan index array berupa nilai konstan, misalnya 1..5
Array di Java dapat ditangani secara dinamis sehingga index array dapat ditentukan lewat nilai variabel pada saat run-time Bahkan dengan memanfaatkan class-class seperti class Arrays, Vector, dan List, kita dapat menambahkan, menyisipkan, menghapus, mencari ataupun mengurutkan elemen array secara dinamis Class Arrays, Vector, dan List berada dalam package java.util
Deklarasi & Inisialisasi Array Syntax deklarasi array tipeData nama[]; Syntax inisialisasi array tipeData nama[] = new tipeData[jumlahElemen]; tipeData nama[] = {nilai1, nilai2, ...};
Contoh deklarasi array byte umur[]; atau byte[] umur; Tanda kurung siku dapat ditulis sebelum atau sesudah nama float ipk[]; String kodeBarang[];
Contoh inisialisasi array short tahun[] = new short[5]; double saldo[] = new double[20]; String nama[] = new String[30]; byte umur[] = {34,76,63}; float ipk[] = {3.81f,0.567f,-98.234f,4e3f}; String kodeBarang[] = {“A001”,”B002”,”C003”};
Index array di Java dimulai dari 0 (nol) Index array di Java dimulai dari 0 (nol). Misalnya untuk contoh di atas: umur[0] berisi nilai 34 umur[1] berisi nilai 76 umur[2] berisi nilai 63 Java juga mendukung array multi-dimensi. Contoh untuk array berdimensi dua. int matriks[][] = new int[4][3]; matriks[0][0] = 45; matriks[3][2] = 56;
Class Arrays Class Arrays digunakan untuk memanipulasi data dalam bentuk array. Di dalam class ini terdapat beberapa function berikut: asList() Mengubah array menjadi List sort() Mengurutkan data di dalam array equals() Membandingkan isi dari dua buah array fill() Mengisi seluruh atau sebagian elemen array dengan sebuah nilai toString() Mengubah isi array menjadi string binarySearch() Mencari data yang terdapat di dalam array
Contoh kode penggunaan class Arrays import java.util.*; class Coba{ static void cetakArray(int c[]){ System.out.println(); for(int i = 0; i < c.length; i++) System.out.print(c[i] + "\t"); } public static void main(String args[]){ int a[] = {4,1,5,2,3}; int b[] = {1,2,3,4,5}; Arrays.sort(a); cetakArray(a);
if(Arrays.equals(a,b)) System.out.print("\narray sama"); else System.out.print("\narray tidak sama"); Arrays.fill(a,7); cetakArray(a); Arrays.fill(a,1,4,9); String isi = Arrays.toString(a); System.out.println("\n" + isi); System.out.println(Arrays.binarySearch(b,3)); }
Contoh kode penggunaan class List import java.util.*; class Coba{ public static void main(String args[]){ String nama[] = {"Jason","Emily","Lisa", "Jamie","Pierre","Stanley", "Gloria","Ben","Ken","Lela"}; Arrays.sort(nama); List list = Arrays.asList(nama); tampil(list); }
static void tampil(List list){ System.out.println(list.size()); ListIterator i = list.listIterator(0); while(i.hasNext()){ Object o = i.next(); if(o == null) System.out.println("null"); else System.out.println(o.toString()); }
Class Vector Java menyediakan sebuah class dengan nama Vector untuk menangani array berdimensi satu secara dinamis addElement() Menambahkan elemen ke dalam vector insertElementAt() Menyisipkan elemen pada index tertentu size() Mengembalikan jumlah elemen removeElement() Menghapus elemen pada index tertentu elementAt() Mengembalikan elemen pada index tertentu Clear() Menghapus seluruh elemen pada vector Contains() Mengecek keberadaan sebuah elemen isEmpty() Mengecek apakah vector kosong toString() Menduplikasi isi vector ke sebuah string
Contoh kode penggunaan class Vector import java.util.*; class Coba{ public static void main(String args[]){ Vector v = new Vector(); v.addElement("satu"); v.addElement("dua"); v.addElement("tiga"); v.insertElementAt("nol",0); v.insertElementAt("three",3); v.insertElementAt("empat",5); Enumeration en = v.elements();
while (en.hasMoreElements()) System.out.print(en.nextElement()+" "); System.out.println(); v.removeElement("three"); for(int i = 0; i < v.size(); ++i) System.out.print(v.elementAt(i) + " "); System.out.println(v.contains("tiga")? "\nada":"\ntidak ada"); System.out.println(v.toString()); v.clear(); System.out.println(v.isEmpty()? "kosong":"berisi"); }