modul-praktikum-pbo-4-array-dan-string.pdf
DESCRIPTION
oopTRANSCRIPT
PRAKTIKUM PBO – ARRAY DAN STRING February 11,
2010
© Tim Asisten PBO – UKDW 2010 [4]
Array dan String Topics:
Array
String
Array Pada pertemuan kali ini, kita akan membahas mengenai array dalam java. Pertama, kita akan mendefiniskan apa yang dimaksud dengan array, cara mendeklarasikan array dan cara penggunaanya. Array merupakan sekumpulan obyek yang memiliki tipe data yang sama dan dapat di akses secara random dengan menggunakan index. Array mempunyai panjang yang tetap, artinya ketika kita mendeklarasikan suatu array dengan panjang 10, maka array tersebut panjangnya akan tetap 10 walaupun kita hanya memakai 5 elemen.
Mengapa Array? Pada praktikum sebelumnya, kita telah mengenal tipe data primitif (int, double, float dan lain-lain). Kita juga telah pelajari bagaimana mendeklarasikan tipe data primitif tersebut. Misalnya:
Contoh di atas merupakan cara pembuatan tiga variabel bertipe int (bertipe sama).
Bagaimana kalo kita menginginkan 100 variabel yang bertipe sama, haruskan kita membuat
variabel tersebut hingga 100 buah? Kita memang bisa membuat 100 variabel dengan tipe data
yang sama secara konvensional tetapi hal tersebut sangat menyita waktu dan kurang efektif.
Untuk menjawab masalah tersebut, maka java menyediakan suatu tipe variabel yang bisa
berisikan tipe data yang sama dengan penamaan yang sama tetapi dapat diakses secara efektif
melalui index.
Penyelesaiian masalah di atas:
Contoh di atas menunjukkan kalau kita cukup membuat variabel array yang bernama variabel
dengan panjang 100.
Gambar visual suatu array
int variabel1;
int variabel2;
int variabel3;
variabel1=1;
variabel2=2;
variabel3=3;
int variabel[ ]=new int[100];
PRAKTIKUM PBO – ARRAY DAN STRING February 11,
2010
© Tim Asisten PBO – UKDW 2010 [4]
Struktur Array Deklarasi array
Secara Umum: <type data> nama_variabel[ ]; atau <type data>[ ] nama_variabel Contoh 1: int variabel[ ]; Contoh 2: int[] variabel; *tanda kurung ([]) bisa diletakkan dibelakang tipe data primitif (lihat contoh 1) atau dibelakang nama variable (lihat contoh 2)
Pembuatan dan alokasi array Secara Umum: nama_variabel=new <type data>[jumlah elemen]; Contoh: variabel=new int[100];
Inisialisasi atau pengaksesan array Secara Umum: <type data>nama_variabel[ ]={nilai1,nilai2,nilai3,…,nilai_n}; Contoh: int variabel[ ]={1,2,3,4,5,6,7,8}; Untuk lebih memahami tentang array, silakan ketikkan program di bawah ini:
Coba compile dan jalankan program di atas.
Sama seperti pada bahasa pemograman di C, tipe data char pada java juga di simpan dalam
bentuk ASCII. Jadi kita dapat menjumlahkan tipe char tersebut. Untuk lebih jelasnya silakan
coba program dibawah ini.
//Program Histogram
public class Histogram {
public static void main(String[] args){
int array[ ]={4,3,6,7,1,9,5};
System.out.println("Program Histogram");
System.out.println("Panjang array: " +array.length);
for(int i=0;i<array.length;i++){
System.out.print(array[i] +"\t: ");
for(int j=0;j<array[i];j++){
System.out.print("*");
}
System.out.println();
}
}
}
public class PBO {
public static void main(String[] args) {
char pbo[];
pbo=new char[7];
pbo[0]='P'; pbo[4]='O';
pbo[1]='B'; pbo[5]='B';
pbo[2]='O'; pbo[6]='P';
pbo[3]=' ';
for(int i=0;i<pbo.length;i++){
System.out.print(pbo[i]);
}
pbo[0] += 1;
System.out.println();
System.out.println("Hasil penambahan: " +pbo[0]);
}
}
PRAKTIKUM PBO – ARRAY DAN STRING February 11,
2010
© Tim Asisten PBO – UKDW 2010 [4]
Coba compile dan jalankan program di atas.
Mengcopy Suatu Array Kita bisa mencopy suatu isi array ke array yang lain dengan menggunakan fungsi bawaan dari java yaitu System.arraycopy. Fungsi ini memiliki 5 parameter, kelima parameter tersebut adalah:
1. From : Array asal 2. From Index : start index 3. To : array tujuan 4. To Index : index array tujuan (start index array tujuan) 5. Count : banyaknya elemen yang akan dikopi
Untuk lebih jelas mengenai fungsi arraycopy, silakan ketikkan program di bawah ini:
Coba compile dan jalankan program di atas. Apa yang dapat kalian simpulkan dari
program di atas?
Coba udah sedikit code di atas menjadi : System.arraycopy(arrayAsal,3,arrayTujuan,4,8);
Coba tambahkan code dibawah ini:
Compile dan jalankan program di atas, apa yang terjadi?
class ArrayCopy {
public static void main(String[] args) {
int arrayAsal[]={0,1,2,3,4,5,6,7,8,9};
int arrayTujuan[]={9,8,7,6,5,4,3,2,1,0};
//kata kunci : System.arraycopy(From,FromIndex,To,ToIndex,count)
System.arraycopy(arrayAsal,3,arrayTujuan,4,4);
for(int i=0;i<arrayTujuan.length;i++){
System.out.println(arrayTujuan[i]);
}
}
}
Tambahan:
Array pada java dimulai dari index ke-0 s/d ke-(n-1). Dimana n adalah jumlah
element/banyaknya data. Array bersifat statis sehingga tidak bisa ditambah ataupun dikurangi.
PRAKTIKUM PBO – ARRAY DAN STRING February 11,
2010
© Tim Asisten PBO – UKDW 2010 [4]
Array 2 dimensi:
char multiChar[ ][ ]=new char[10][5];
char multiChar2[ ][ ]={{'a','b','c'},{'d','e','f'}}; inisialisasi array 2 dimensi
Array 3 dimensi:
int tigaDimensi[ ][ ][ ]=new int[10][10][10];
int tigaDimensi2[ ][ ][ ]={{{1,2,3},{4,5,6}},{{1,2,3},{4,5,6}}}; inisialisasi array 3 dimensi
Tambahan:
Array lebih dari 2-dimensi sangat jarang dipakai.
public class Multidimensi {
public static void main(String[] args) {
char multiChar[ ][ ]=new char[10][5];
char multiChar2[ ][ ]={{'a','b','c'},{'d','e','f'}};
int tigaDimensi[ ][ ][ ]=new int[10][10][10]; int tigaDimensi2[ ][ ][ ]={{{1,2,3},{4,5,6}},{{7,8,9},{10,11,12}}};
System.out.println("Karakter pada baris ke-1 dan kolom ke-1: " +multiChar2[1][1]);
System.out.println("Karakter pada baris ke-1 dan kolom ke-1: " +tigaDimensi2[1][1][1]);
}
}
Array Multidimensi Array tidak hanya terdiri dari 1 dimensi, array juga bisa terdiri dari 2 dimensi, 3 dimensi dan n-dimensi. Array di atas 3 dimensi sangat jarang digunakan karena sangat sulit untuk di gambarkan. Array multidimensi diimplementasikan sebagai array dalam array. Untuk lebih jelas mengenai cara pendeklarasian array multidimensi dan penggunaanya, silakan ketikkan program di bawah ini. Cara mendeklarasikan array multidimensi:
Coba ketikkan program di bawah ini untuk memahami lebih mendalam mengenai array multidimensi. Compile dan jalankan, apa yang hasil outputnya?
Cobalah untuk mengubah-ubah index dalam pemanggilan array untuk memahami mengenai
fungsi array tersebut lebih mendalam.
PRAKTIKUM PBO – ARRAY DAN STRING February 11,
2010
© Tim Asisten PBO – UKDW 2010 [4]
public class TwoDArray {
public static void main(String[] args) {
int tabel[ ][ ]=new int[5][10];
for(int row=0;row<tabel.length;row++){
for(int col=0;col<tabel[row].length;col++){
tabel[row][col]=row*10+col;
}
}
for(int row=0;row<tabel.length;row++){
for(int col=0;col<tabel[row].length;col++){
System.out.print(tabel[row][col] +"\t");
}
System.out.println();
}
}
}
* Pengaksesan index pada array seperti pengaksesan koordinat suatu peta dalam koordinat 2
dimensi yaitu [x,y] atau sama seperti pada sebuah Matrix yaitu [baris,kolom]
String String merupakan sekumpulan karakter yang sebenarnya tersimpan dalam suatu array
(Array of Character). String pada java merupakan suatu Object yang memiliki beberapa fungsi
untuk memanipulasi Object tersebut (untuk Object akan dipelajari di pertemuan selanjutnya).
Untuk lebih jelas mengenai String silakan lihat contoh di bawah:
Deklarasi String
Cobalah buat tambahkan code seperti di bawah ini:
Compile lagi program di atas, lalu lihat apa yang terjadi? Apakah error atau tidak?
PRAKTIKUM PBO – ARRAY DAN STRING February 11,
2010
© Tim Asisten PBO – UKDW 2010 [4]
public class PickAnCharacter {
public static void main(String[] args) {
String pbo="Saya Sedang Belajar PBO loh...";
System.out.println("karakter pada index ke-6 : " +pbo.charAt(6));
char tampung[]=new char[100];
int awal=9;
for(int i=0;i<17;i++){
tampung[i]=pbo.charAt(awal);
awal+=1;
}
for(int j=0;j<17;j++){
System.out.print(tampung[j]);
}
}
}
Cara Lain Pendeklarasian String
Contoh di atas merupakan contoh lain dari pendeklarasian sebuah String.
Pendeklarasian String pada contoh pertama maupun kedua pada intinya sama. Jadi, silakan
kalian milih mau menggunakan contoh pertama ataupun kedua ^^
Pendeklarasian String pada contoh kedua sekaligus membuktikan bahwa String pada
java merupakan suatu Object (mengenai Object akan dipelajari lebih lanjut pada pertemuan
selanjutnya).
Manipulasi String
Kita juga bisa memanipulasi String pada java. Untuk memanipulasi String pada java
cukup mudah karena String pada java berupa Object. Object biasanya berisi fungsi-fungsi
bawaan dari Object tersebut. Untuk lebih jelas mengenai manipulasi String, coba ketikkan
contoh program di bawah ini.
Contoh di atas menunjukkan bagaimana cara kita mengambil sebuah karakter dalam
sebuah String. Ingat, String merupakan sekumpulan karakter. Oleh karena itu, untuk mengambil
suatu karakter dalam sebuah String kita harus menggunakan sebuah index (array).
PRAKTIKUM PBO – ARRAY DAN STRING February 11,
2010
© Tim Asisten PBO – UKDW 2010 [4]
Manipulasi String (tambahan)
Di bawah ini merupakan contoh manipulasi String yang sering digunakan.
PRAKTIKUM PBO – ARRAY DAN STRING February 11,
2010
© Tim Asisten PBO – UKDW 2010 [4]
Latihan!! 1. Buatlah suatu program yang bisa menghitung pengurangan, penambahan suatu
matrix (array 2 dimensi).
2. Buatlah suatu program yang bisa mengecek bilangan terkecil, terbesar serta rata2 dari semua data yang diinputkan oleh user. Inputan berupa arguments.
3. Buatlah suatu program untuk menghitung jumlah huruf dalam sebuah kalimat dengan menggunakan JOptionPane.
Contoh Output:
4. Buatlah suatu program yang dapat mengurutkan data yang di inputkan oleh user. Input
user berupa argumens (args). 10 data saja cukup.
Contoh Program: