Anda di halaman 1dari 30

BAB III

ARRAY DAN STRING

3.1 Tujuan
Adapun tujuan dari praktikum ini adalah sebagai berikut :
1. Mengerti dan memahami penggunaan array dan string.
2. Mampu menggunakan beberapa operator dan method yang menyertai
penerapan array dan string.

3.2 Dasar Teori


3.2.1 Array
Array merupakan tipe data yang digunakan apabila data diberikan
sebelum kelompok data yang disajikan secara berurutan. Setiap elemen data
memiliki tipe data yang sama. Array menggunakan sekelompok lokasi
memori yang berurutan dengan nama dan tipe data yang berbeda.
syntax :
tipe_data nama_variabel_array[]
Besarnya alokasi memori yang akan digunakan perlu di berikan
sebelum variabel bertipe array tersebut digunakan. Apabila alokasi memori
tidak diberikan secara eksplisit, maka Java akan membeikannya secara
implisit. Kemudian, setiap elemen data disebut dengan
nama_variabel_array yang diikuti dengan indeks pemogramannya.
Sebagai contoh, apabila akan dibuat variabel penjualan bertipe array
dengan alokasi memori sebesar 11, dan akan memberikan nilai 125 untuk
penjualan ke-11, maka dapat dituliskan:
Syntax:
int penjualan[];
penjualan = new int[12];
penjualan[11] = 125;

30
31

Untuk mengetahui jumlah elemen dari sekelompok data yang bertipe


array, dapat digunakan perintah length.
Syntax:
Nama_variabel_array.length

Contoh:
Program yang ditulis pada gambar 3.1 menunjukkan aplikasi variabel
penjualan yang bertipe array dimana setiap elemen bertipe integer.

Gambar 3. 1 program Array

Apabila program tersebut dieksekusi, maka hasilnya seperti pada gambar 3.2

Gambar 3. 2 Output Array

Model array sebagaimana yang dijelaskan diawal merupakan array


satu dimensi. Sangat dimungkingkan satu variabel membutuhkan array dua
dimensi, misalkan pada aplikasi matriks. Syntax untuk array dua dimensi
diberikan sebagai berikut.
Sintaks:
32

tipe_data nama_variabel_array[][]
Sebagai contoh, apabila akan dibuat variabel penjualan bertipe array
dua dimensi, dengan alokasi memori sebesar 12 untuk dimensi pertama dan
31 untuk dimensi kedua, serta akan memberikan nilai 125 untuk penjualan
pada dimensi (11,23) maka dapat dituliskan:
int penjualan[][];
penjualan = new int [12][31];
penjualan[11][23] = 125;
Diketahui daftar nilai matakuliah PBO untuk 5 mahaiswa sebagaimana
terlihat pada Tabel 3.1.

Tabel 3. 1 Daftar Nilai PBO Mahasiswa


Nilai
MahasiswaKe
Rata 2 Tugas UTS UAS

1 50 60 70

2 70 75 87

3 89 90 90

4 65 76 89

5 65 70 80

Selanjutnya akan dicari nilai akhir unuk setiap mahasiswa yang


merupakan nilai rata-rata dari ketiga komponen penilaian (rata2 tugas, UTS,
UAS). Selanjuntya, pemberian nilai dengan huruf diberikan sebagai berikut.

Tabel 3. 2 Konversi nilai ke huruf

Nilai Huruf

Nilai > 80 A

70 < Nilai ≤80 B

60 < Nilai ≤70 C


33

50 < Nilai ≤60 D

Nilai ≤50 E

Program yang ditulis pada Tabel 5.3 menunjukkan aplikasi variabel


penjualan yang bertipe array dimana setiap elemen bertipe integer.

Gambar 3. 3 Array bertipe Integer

Apabila program tersebut dieksekusi, maka hasilnya seperti pada Gambar 3.4

Gambar 3. 4 Output Array bertipe Integer


34

3.2.2 Array Satu Dimensi


Pada dasarnya array satu dimensi merupakan kumpulan dari variabel
yang memiliki tipe data yang sama.
Tipe-data nama –array[];
Tipe-data[] nama-array;
Variasi cata pendeklarasian ini hanyalah untuk memudahkan
programer, bentuk mana yang digunkan adalah terserah kepada programer
karena pada dasarnya keduanya sama.
Tipe data merupakan tipe data yang akan di tampung oleh variabel
array ini. Semua tipe data yang di kenal dalam java, baik yang primitif
maupun beberapa class dapat di gunakan disini. Untuk nama array,
merupakan identifer yang menggunakan nama dari variabel array itu sendiri
sama seperti Java bahwa variabel ini bertipe array. (Indrajani, 2007)
3.2.3 Array Tiga Dimensi
Array 3 dimensi adalah array uang tidak jauh bereda dengan array satu
dimensi dan dua dimensi yang telah dijelaskan sebelumnya, kecuali pada
indek dari array. Pada tipe ruang misalnya type ruang = array [1..8,1..5,1..3]
ofinteger; menunjukkan bahwa ruang adalah nama-pengenal atau variabel
yang berupa array yang komponennya bertipe integer dan terdiri atas 8 baris,
mempunyai 5 kolom, dan 3 halaman.
Bedanya array 3 dimensi dengan 1 dan 2 dimensi yaitu menggunakan
3 index misalnya deklarasi array yang sebagai berikut :
int banyak data [5] [2] [3]
a. Index pertama menunjukkan banyak garis.
b. Index kedua menunjukkan banyak isi baris.
c. Index ketiga menunjukkan banyak kolom. (Sinaga, 2015)
3.2.4 String
String merupakan deretan karakter. Pada java, string merupakan objek
dari kelas string. Penulisan string di lakukan dengann mengapit data
menggunakan tanda petik (ganda).
Contoh :
35

String judul = “ Pemrograman Berorientasi Objek”;


String dapat dioperasikan dengan menggunakan beberapa operator atau
method untuk beberapa kepentingan yang berbeda.

1. Mengetahui panjang string


Untuk mengetahui panjang string dapat digunkan method length ().
2. Mengetahui kesamaan antara dua string
Untuk mengetahui lesamaan antara dua string dapat digunakan operator
== atau method equal (string)atau method equal.IgnoreCase
(String).
3. Melakukan pembandingan karakter-karakter pada string
Untuk melakukan pembandinan karakter-karakter secara berurutan dari
awal string dapat diiginkan.
4. Mendapatkan karakter pada posisi tertentu
Untuk mendapatkan karakter pada posisi tertentu dapat digunakan method
charAt(int Posisi). Posisi pertama bernilaiinteger 0, hingga posisi
terakhir bernilai N-1 (dengan N adalah panjang string).
5. Mendapatkan posisi karakter pada string.
Untuk mendapatka posisi karakter pada string dapat dilakukan dengan dua
cara sebagai berikut:
a. Apabila posisi awal pencarian tidak ditentukan, maka untuk
mendapatkan posisi karakter pada string dapat digunakan
methodindexOf (char Karakter). Apabila karakter tidak ditemukan,

maka akan diberikan nilai-1.


b. Apabila posisi awal pencarian telah ditentukan, maka untuk
mendapatkan posisi karakter pada string dapat digunakan method
indexOf(char Karakter, int Awal). Nilai awal merupakan
bilangan integer yang menunjukkan posisi awal pencarian. Apabila
karakter tidak ditemukan, maka akan diberikan nilai-1.
6. Melakukan konversi huruf besar (kapital) ke huruf kecil
Untuk melakukan konversi huruf besar ke huruf kecil dapat digunakan
method toLowerCase().
36

7. Melakukan konversi huruf kecil ke huruf besar (kapital)


Untuk melakukan konversi huruf kecil ke huruf besar dapat digunakan
method toUpperCase().
8. Melakukan penyambungan antar dua string
Untuk melakukan penyambungan antar dua string dapat digunakan
operator +.
9. Membuat string baru
Untuk membuat string baru dari string yang sudah pernah ada dapat
dilakukan dengan dua cara sebagai berikut:
a. Untuk membuat string baru dari string yang telah ada mulai dari
karakter awal string dapat digunakan method substring(int awal).
b. Untuk membuat string baru dari string yang telah ada mulai dari
karakter awal hingga karakter akhir string dapat digunakan method
substring(int awal, int akhir).

10. Melakukan modifikasi string


Untuk melakukan modifikasi string dapat dilakukan dengan dua cara
sebagai berikut.
a. Untuk me-replace karakter pada string dengan karakter baru dapat
digunakan method replace(char karakterLama, char
baruterbaru)
b. Untuk menghilangkan spasi di awal dan di akhir string dapat digunakan
method trim().
11. Membuat array ka rakter dari string
Untuk membuat array karakter dari string yang telah ada dapat dilakukan
dengan dua cara sebagai berikut:
a. Menggunakan method toChartArray() yang diperoleh dari class
String. Implementasi dari method ini membutuhkan adanya
pendeklarasian variabel arraychar untuk menampung larik karakter
yang dihasilkan
b. Menggunakan method getChars(int awal, int akhir, char[]
arrayChar, int posAwal), dengan awal merupakan posisi akhir
37

karakter pada string, arrayChar merupakan variabel untuk menyimpan


larik karakter yang dihasilkan, dan posAwal merupakan indeks awal
untuk menyimpan karakter.

3.3 Latihan
1. Membuat Array Satu Dimensi
a. Kode program

/*Ahmad Saifurrohman(32601800003)*/

package Bab3_Latihan;

public class Latihan1 {

public static void main(String[] args) {

int penjualan[] = {100, 120, 112, 105, 105,


122,108, 121, 122, 130, 115, 125};

int N = penjualan.length;

for (int i=0; i<N; i++){

System.out.println("Penjualan ke-"+i+" =
"+penjualan[i]); }

} }

b. Output

Gambar 3.5 Output array 1 dimensi


38

c. Penjelasan
Program pada gambar 3.1 adalah contoh dari array 1
dimensi, dimana pada program tersebut telah dialokasikan memori
sebesar 11, dan akan memberikan nilai 125 untuk penjualan ke-11.
Sintaks untuk mengoprasikam program tersebut adalah for (i=0;
i<N; i++) dimana i sama dengan 0 (nol),i kurang dari N, dan i
akan ditambah sebanyak nilai i, dan untuk menampilkan
hasil menggunakan sintaks System.out.println(“Penjualan
ke-“+i+” = “+penjualan[i]);
2. Membuat program array dua dimensi
a. Kode program
/*Ahmad Saifurrohman(32601800003*/

package Bab3_Latihan;

public class Latihan2 {

public static void main(String[] args) {

double nilai[][]={{50, 60, 70}, {70, 75,


87},{89, 90, 90},{65, 76, 89},{65, 70, 80}};

int N = nilai.length;

char huruf;

for (int i=0;i<N;i++)

int M = nilai[i].length;

double totNilai=0;

for(int j=0;j<M;j++){

totNilai+= nilai[i][j];

double rata2 = totNilai/M;


39

if (rata2 > 80.0d)

huruf='A';

else if (rata2 > 70.0d){

huruf='B';

else if (rata2 > 60.0d){

huruf='C';

else if (rata2 > 50.0d){

huruf='D';

else

huruf='E';

System.out.println("Nilai mahasiswa ke-"+1+"


= "+rata2+" ("+huruf+")");

}
40

b. Output

Gambar 3.6 Output array 2 dimensi


c. Penjelasan
Program pada gambar 3.2 adalah program untuk menentukan
nilai mahasiswa, didalam program tersebut menggunakan tipe data
double, integer, dan char. Dalam program diatas terdapat sintaks for

yang berfungsi untuk melakukan perulangan dimana dalam program


terdapat sintaks for (int i=0; i<N; i++); yang dimaksud adalah i
sama dengan 0, i kurang dari N dan i akan ditambah sebanyak nilai i,
kemudian terdapat for (int j=0; j<M; j++); dimana j sama dengan
0, j kurang dari M dan j akan ditambah sebanyak nilai j. Kemudian pada
tipe data double rata2 = totNilai/M terdapat fungsi if (rata2 >
80.0d)dimana jika nilai dari rata2 lebih besar dari 80 maka akan
menampilkan huruf A, dan begitupun selanjutnya.
3. Mengetahui Panjang String
a. Kode program
/*Ahmad Saifurrohman(32601800003) */
package Bab3_Latihan;

public class Latihan4 {


public static void main(String[] args) {
String A = "Laboratorium Komputasi dan Sistem
Cerdas";
String B = "LABORATORIUM KOMPUTASI DAN SISTEM
CERDAS";
41

String C = "Laboratorium Komputasi Sistem


Cerdas";
String D = "LABORATORIUM KOMPUTASI SISTEM
CERDAS";
String E = "Laboratorium Komputasi dan Sistem
Cerdas";

boolean tes1, tes2, tes3;


tes1 = A.equals(B);
tes2 = (A==C);

tes3 = A.equals(E);

System.out.println("Nama : Ahmad Saifurrohman");


System.out.println("NIM : 32601800003");
System.out.println("===============KESAMAAN DUA
STRING===============");
System.out.println("("+A+") == ("+B+") -->
"+tes1);
System.out.println("("+A+") == ("+C+") -->
"+tes2);
System.out.println("("+A+") == ("+E+") -->
"+tes3);
System.out.println("("+B+") == ("+D+") -->
"+B.equals(D));
System.out.println("("+C+") == ("+E+") -->
"+(C==E));
}

}
b. Output

Gambar 3.7 Output panjang string


42

c. Penjelasan :
Program pada gambar 3.3 adalah program untuk menentukan
panjang string dengan menggunakan metode length().sebelum program
dioperasikan terlebih dulu string A telah diinisialisasikan
“Pemrograman Berorientasi Objek” dan string-string selanjutnya telah
diinisialisasikan sesuai modul. Kemudian program mengeksekusi
fungsi int nA = A.length() yang berfungsi untuk menghitung
panjang string, setelah panjang string didapatkan maka hasilnya akan
dinisialisaikan ke nA untuk nantinya dipanggil untuk keluaran pada
variabel A dan begitupun pada fungsi selanjutnya.
4. Mengetahui kesamaan antara dua String
a. Kode program
/*Ahmad Saifurrohman(32601800003) */
package Bab3_Latihan;

public class Latihan4 {


public static void main(String[] args) {
String A = "Laboratorium Komputasi dan Sistem
Cerdas";
String B = "LABORATORIUM KOMPUTASI DAN SISTEM
CERDAS";
String C = "Laboratorium Komputasi Sistem
Cerdas";
String D = "LABORATORIUM KOMPUTASI SISTEM
CERDAS";
String E = "Laboratorium Komputasi dan Sistem
Cerdas";

boolean tes1, tes2, tes3;


tes1 = A.equals(B);
tes2 = (A==C);

tes3 = A.equals(E);

System.out.println("Nama : Ahmad Saifurrohman");


43

System.out.println("NIM : 32601800003");
System.out.println("===============KESAMAAN DUA
STRING===============");
System.out.println("("+A+") == ("+B+") -->
"+tes1);
System.out.println("("+A+") == ("+C+") -->
"+tes2);
System.out.println("("+A+") == ("+E+") -->
"+tes3);
System.out.println("("+B+") == ("+D+") -->
"+B.equals(D));
System.out.println("("+C+") == ("+E+") -->
"+(C==E));
}

}
b. Output

Gambar 3.8 Output kesamaan dua string


c. Penjelasan
Program pada gambar 3.4 adalah program yang digunakan untuk
mengetahui kesamaan antara dua string. Dimana pada program tersebut
hampir sama dengan program latihan 3, yang meninisialisasikan nilai
string nya. Setelah string diinisialisasikan maka fungsi boolean tes1,
tes2, tes3; akan dieksekusi dengan ketentuan tes1 = A.equals
(B) yang dimaksud adalah membandingkan antara string A dan B,
apabila nilai string sama makan menghasilkan true, tapi bila tidak sama
maka akan menampilkan flase. Dan begitupun pada fungsi-fungsi
selanjutnya.
5. Perbandingan karakter pada String
a. Kode program
44

/*Ahmad Saifurrohman(32601800003)*/
package Bab3_Latihan;

public class Latihan5 {


public static void main(String[] args){
String[] nama = {"Megawati Sukarno Putri",
"Susilo BambangYudoyono",
"Jusuf Kalla",
"Prabowo Subiyanto",
"Boediono","Wiranto"};

String sementara;
int N = nama.length;

//menampilkan nama awal sebelum diurutkan


System.out.println("Nama : Ahmad Saifurrohman");
System.out.println("NIM : 32601800003");
System.out.println("======Perbandingan Karakter
String======");
System.out.println("Daftar nama sebelum
diurutkan");
for (int i=0; i<N; i++){
System.out.println((i+1)+". "+nama[i]);
}

//pengurutan nama
for (int i=0; i<=N-2; i++)
{
for (int j=i+1; j<=N-1; j++)
{
if (nama[i].compareTo(nama[j])>0)
{
sementara = nama[i];
nama[i] = nama[j];
nama[j] = sementara;
}
}
}
45

//Menampilkan setelah diurutkan


System.out.println("Daftar nama setelah
diurutkan");
for (int i=0; i<N; i++){
System.out.println((i+1)+". "+nama[i]);
}
}

}
b. Output

Gambar 3.9 Output perbandingan karakter string


c. Penjelasan
Program pada gambar 3.5 adalah program untuk melakukan
pembandingan karakter-karakter secara berurutan dari awal string,
untuk melakukan pembandingan tersebut dapat digunakan method
compareTo().Sebelumnya program menginisialisai isi untuk string
[] nama, didalam program tersebut juga terdapat fungsi for, yang
berfungsi untuk melakukan pengulangan. Kemudain untuk melakukan
pembandingan karakter-karakter menggunkan fungsi
if(nama[i].compareTo(nama[j])>0) dimana nama [i] akan di
compare ke nama [j]. Didalam fungsi if juga terdapat sementara =
nama[i] dimana yang dimaksud adalah isi dari nama [i]
diinisialisasikan ke sementara, dan begitupun selanjutnya.
46

6. Mendapatkan karakter pada posisi tertentu


a. Kode program
/*Ahmad Saifurrohman(32601800003)*/
package Bab3_Latihan;
import java.util.Random;

public class Latihan6 {


public static void main(String[] args) {
System.out.println("Nama : Ahmad Saifurrohman");
System.out.println("NIM : 32601800003");
System.out.println("=====Mendapatkan
Karakter=====");
String A = "Laboratorium Komputasi dan Sistem
Cerdas";
Random rand = new Random();
for (int i=0; i<=10; i++){
int ke = rand.nextInt(A.length());
System.out.println("Karakter ke-"+ke+" =
"+A.charAt(ke));
}
}
}
b. Output

Gambar 3.10 Output posisi mendapatkan karakter


c. Penjelasan
47

Program pada gambar 3.6 adalah untuk mendapatkan karakter


pada posisi tertentu dengan menggunkan metode charAt (int posisi),
posisi pertama bernilai integer 0, hingga posisi terakhir bernilai N-1
(dengan N adalah panjang string). Program akan menampilkan karakter
pada posisi tertentu yang diberikan secara acak dan diulang sebanyak
10 kali.
7. Mendapatkan posisi karakter pada String
a. Kode program
/*Ahmad Saifurrohman 32601800003*/
package Bab3_Latihan;

public class Latihan7 {


public static void main(String[] args) {

String A = "Laboratorium Komputasi dan Sistem


Cerdas";

System.out.println("Nama : Ahmad Saifurrohman");


System.out.println("NIM : 32601800003");
System.out.println("=====Posisi Karakter Pada
String=====");
System.out.println("Karakter (s) terletak pada
posisi ke : "+A.indexOf('s'));
System.out.println("Karakter (a) terletak pada
posisi ke : "+A.indexOf('a'));
System.out.println("Karakter (v) terletak pada
posisi ke : "+A.indexOf('v'));
System.out.println("Setelah posisi ke 10,
karakter (s) terletak pada posisi ke :
"+A.indexOf('s',10));
System.out.println("Setelah posisi ke 10,
karakter (a) terletak pada posisi ke :
"+A.indexOf('a',10));
}
}
b. Output
48

Gambar 3.11 Output posisi karakter


c. Penjelasan
Program pada gambar 3.7 adalah program untuk mendapatkan
posisi karakter pada string dengan dua cara yaitu apabila posisi awal
pencarian tidak ditentukan, maka untuk mendapatkan posisi karakter
pada string dapat digunakan methodindexOf(char Karakter). Apabila
karakter tidak ditemukan, maka akan diberikan nilai -1, dan Apabila
posisi awal pencarian telah ditentukan, maka untuk mendapatkan posisi
karakter pada pada string dapat digunakan methodindexOf
(charKarakter, int Awal). Nilai Awal merupakan bilangan integer
yangmenunjukkan posisi awal pencarian. Apabila karakter tidak
ditemukan, maka akan diberikan nilai -1.
8. Melakukan konversi huruf kecil ke huruf besar (kapital)
a. Kode program
/*Ahmad Saifurrohman(32601800003)*/
package Bab3_Latihan;

public class Latihan8 {


public static void main(String[] args) {
String A = "laboratorium Komputasi dan Sistem
Cerdas";
String Besar = A.toUpperCase();
String Kecil = A.toLowerCase();

System.out.println("Nama : Ahmad Saifurrohman");


System.out.println("NIM : 32601800003");
System.out.println("=====Konversi huruf kecil ke
besar=====");
49

System.out.println("Kalimat awal : "+A);


System.out.println("Diubah ke huruf besar :
"+Besar);
System.out.println("Diubah ke huruf kecil :
"+Kecil);
}

}
b. Output

Gambar 3.12 Output konversi huruf kecil ke besar


c. Penjelasan
Program pada gambar 3.8 adalah program untuk melakukan
konversi karakter dari huruf kecil ke huruf besar dengan meggunakan
sintaks String Besar = A.toUpperCase();dan untuk melakukan
konversi dari huruf besar ke huruf kecil menggunkan sintaks String
kecil = A.toLowerCase();
9. Melakukan penyambungan antar dua String
a. Kode program

/*Ahmad Saifurrohman(32601800003)*/

package Bab3_Latihan;

public class Latihan9 {

public static void main(String[] args) {

String A;

String B;

String C;
50

A = "Laboratorium ";

B = " Komputasi";

C = " Sistem Cerdas";

String Lab = A + B + C;

System.out.println("Nama : Ahmad Saifurrohman");

System.out.println("NIM : 32601800003");

System.out.println("=====Penyambungan antar
string=====");

System.out.println(Lab);

b. Output

Gambar 3.13 Output penyambungan antar string


c. Penjelasan
Program pada gambar 3.9 adalah berfungsi untuk
menyambungkan antara dua string atau lebih dengan menggunkan
operator +. Dalam program diatas terdapat sintaks String Lab = A +
B + C; yang berfungsi untuk menyambungkan beberapa string yang
berada dalam program diatas.
51

10. Membuat String baru


a. Kode program
/*Ahmad Saifurrohman32601800003*/

package Bab3_Latihan;

public class Latihan10 {

public static void main(String[] args) {

String A = " Laboratorium Komputasi dan Sistem


Cerdas";

String penggal1 = A.substring(10);

String penggal2 = A.substring(20);

String penggal3 = A.substring(10,30);

String penggal4 = A.substring(20,25);

System.out.println("Nama : Ahmad Saifurrohman");

System.out.println("NIM : 32601800003");

System.out.println("=====Menmbuat String
Baru=====");

System.out.println("Kalimat asli: "+A);

System.out.println("Pemenggalan mulai karakter


ke-10 : "+penggal1);

System.out.println("Pemenggalan mulai karakter


ke-20 : "+penggal2);

System.out.println("Pemenggalan mulai karakter


ke-10 sampai ke-30 : "+penggal3);

System.out.println("Pemenggalan mulai karakter


ke-20 sampai ke-25 : "+penggal4);

}
52

b. Output

Gambar 3.14 Output stirng baru


c. Penjelasan
Program pada gambar 3.10 adalah program untuk membuat string
baru dari string yang sudah pernah ada, yang dapat dilakukan dengan
dua cara yaitu, untuk membuat string baru dari string yang telah ada
mulai dari karakter awal string dapat menggunakan method
substring(int awal),dan untuk membuat string baru dari string
yang telah ada mulai dari karakter hingga karakter akhir string dapat
menggunakan method substring(int awal, int akhir). Seperti
pada program tersebut.
11. Melakukan Modifikasi String
a. Kode Program

/*Ahmad Saifurrohman 32602800003 */

package Bab3_Latihan;

public class Latihan11 {

public static void main(String[] args) {

String A = "Laboratorium Komputasi dan Sistem


Cerdas";

String B = A.replace("a", "A");

String C = A.replace("i", "u");


53

String D = A.trim();

System.out.println("Nama : Ahmad Saifurrohman");

System.out.println("NIM : 32601800003");

System.out.println("Kalimat asli : "+A);

System.out.println("Replace a dengan A: "+B);

System.out.println("Replace i dengan u: "+C);

System.out.println("Hilangkan spasi awal &


akhir: "+D);

b. Output

Gambar 3. 15 Output modifikasi string


c. Penjelasan
Program pada gambar 3.11 adalah program untuk melakukan
memodifikasi string. Dengan cara me-replace karakter pada string
dengan karakter baru menggunkan method replace(char karakter
lama,char karakter baru),dan untuk menghilangkan spasi di awal
dan di akhir dapat menggunakan method trim().
12. Membuat Array Karakter dari String
a. Kode program
54

/*Ahmad Saifurrohman 32601800003*/

package Bab3_Latihan;

import java.util.Arrays;

public class Latihan12 {

public static void main(String[] args) {

String A = "Lab. KSC";

char[] karakter0 = A.toCharArray();

char[] karakter1 = new char[7];

A.getChars(2, 6, karakter1, 1);

System.out.println("Nama : Ahmad Saifurrohman");

System.out.println("NIM : 32601800003");

System.out.println("kalimat Asli : "+A);

System.out.println("Per karakter : ");

for (int i=0; i<A.length(); i++){

System.out.println("Karakter ke-"+(i+1)+":
"+karakter0[i]);

System.out.println("Karakter ke-2 sampai ke-6 :


");

for (int i=1; i<karakter1.length; i++){

System.out.println("Karakter ke-"+i+":
"+Arrays.toString(karakter1));

}
55

b. Output

Gambar 3.16 Output array karakter string


c. Penjelasan
Program pada gambar 3.12 adalah program untuk membuat array
karakter dari string yang telah ada, dapat dilakukan dua cara yaitu
dengan menggunkan method to Char Array() yang diperoleh dari
class String. Implementasi dari method ini membutuhkan adanya
pendeklarasian variabel array char untuk menampung larik karakter
yang dihasilkan, dan dengan menggunkan method larik karakter yang
dihasilkan, dan dengan menggunakan method get Char (int awal,
int akhir, char[] array Char, int pos Awal),dengan awal
merupakan posisi awal karakter pada string.

3.4 Tugas
1. Membuat program antrian FIFO
a. Kode program

/*Ahmad Saifurrohman32601800003*/

package Bab2_Tugas;
56

public class Tugas1 {

static int ekor = -1;

static int maxEkor = 5;

public static void addQueue(String antrian[], String


data)

if (ekor >= maxEkor)

System.out.println("Maaf, antrian penuh");

else

ekor++;

antrian[ekor]=data;

public static String deQueue(String antrian[])

String hasil="";

if (ekor<0)

hasil="Maaf, antrian kosong";

else

hasil = antrian[0];

antrian[0]=null;

for (int i=1;i<=ekor;i++)

antrian[i-1]=antrian[i];

antrian[i]=null;

ekor--;

return (hasil);
57

public static void bacaAntrian(String antrian[])

System.out.println("Kondisi Antrian : ");

for (int i=0;i<=maxEkor;i++)

if (i==ekor)

System.out.println(i+". "+ antrian[i]+"


ekor");

else if (antrian[i]==null)

System.out.println(i+". ");

else

System.out.println(i+". "+antrian[i]);}}

public static void main(String []wawan)

System.out.println("Nama : Ahmad Saifurrohman");

System.out.println("NIM : 32601800003");

System.out.println("===== Antrian FIFO =====");

String antrian[]=new String [16];

addQueue (antrian, "Mobil A");

addQueue (antrian, "Mobil B");

addQueue (antrian, "Mobil C");

addQueue (antrian, "Mobil D");

addQueue (antrian, "Mobil E");

addQueue (antrian, "Mobil F");

System.out.println("\n");

System.out.println(" ");

bacaAntrian(antrian);

System.out.println("\n\nURUTAN KELUAR\nQueue :
"+deQueue (antrian));

System.out.println("Queue : "+deQueue (antrian));

System.out.println("Queue : "+deQueue (antrian));

System.out.println("Queue : "+deQueue (antrian));


58

System.out.println("Queue : "+deQueue (antrian));

System.out.println ("\n\nSedangkan Mobil F masih


mengantri"); }}

b. Output

Gambar 3.17 Output tugas 1


c. Penjelasan
Pada gambar 3.13 adalah program antrian FIFO (First In First
Out) atau enqueue. Tipe data yang digunakan yaitu static int. Static
adalah variable atau method yang dideklarasikan dengan perintah static
dapat dipanggil langsung tanpa perlu membuat instance dari class
tersebut. Pada string hasil = “ “; jika ekor kurang dari 0 maka
antrian kosong, selain itu hasil sama dengan [0]; dan antrian [0] sama
dengan null, maka akan tampil isi dari variabel dari hasil yang di
masukkan. Fungsi addQueue digunakan untuk menambahkan elemen
kedalam queue. Dan terdapat juga fungsi dequeue untuk mengambil
elemen satu langkah ke posisi depannya sehingga elemen yang paling
depan tertimpa. Program akan menampilkan sesuai perintah.

3.5 Kesimpulan
Array merupakan tipe data yang digunakan apabila data yang diberikan
berupa kelompok data yang disajikan secara berurutan. Setiap elemen data
59

memiliki tipe data yang sama. Array menggunakan sekelompok lokasi


memori yang berurutan dengan nama dan tipe data yang berbeda.Besarnya
alokasi memori yang akan digunakan perlu diberikan sebelum variabel
bertipe array tersebut digunakan. Apabila alokasi memori tidak diberikan
secara eksplisit, maka Java akan memberikannya secara implisit. Kemudian,
setiap elemen data disebut dengan nama_variabel_array yang diikuti
dengan indeks penomorannya. Sedangkan String merupakan deretan
karakter. Pada java, string merupakan objek dari kelas String. Penulisan
string dilakukan dengan mengapit data menggunakan tanda petik (ganda).
String dapat dioperasikan dengan menggunakan beberapa operator atau
method untuk beberapa kepentingan yang berbeda.

Anda mungkin juga menyukai