Materi 11 Array

Download Report

Transcript Materi 11 Array

Array
As’ad Djamalilleil
http://kampusku.uni.me
[email protected]
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).
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);
cetakArray(a);
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();
System.out.println(v.contains("tiga")?
"\nada":"\ntidak ada");
System.out.println(v.toString());
v.clear();
System.out.println(v.isEmpty()?
"kosong":"berisi");
}
}