STRING
Dalam pemrograman Java string
merupakan aspek penting, karena dapat
mempelajari
mengenai class dan objek melalui penggunaan string. String sebenarnya
merupakan
class yang terdapat dalam library Java. Java String merupakan salah satu
kelas
dasar yang disediakan oleh Java untuk memanipulasi karakter.
A.
Membuat Objek String
Java mendefinisikan class String
dalam package java.lang.String, sehingga
tidak
perlu melakukan impor secara eksplisit. Java String digunakan untuk
mendefinisikan
string yang konstant ( tidak bisa berubah ). Untuk membuat string,
dapat
melakukannya dengan beberapa cara, dan yang sering digunakan adalah contoh
sebagai
berikut.
Contoh
:
String varString = “abcd”;
Kode
diatas adalah bentuk singkat dari :
Char[] datanya =
{‘a’,’b’,’c’,’d’};
String varString = new
String(datanya);
Jadi
dapat disimpulkan bahwa String terdiri dari data array yang bertipe char, dan
kita
juga
dapat membuat objek String dengan menggunakan keyword new yang biasa
digunakan
untuk membuat objek dari class.
Contoh
:
class
LatihanString{
public static void main(String[]
args) {
String str="Selamat Datang di Program
Studi Ilmu Komputer";
System.out.println("Variabel Str : "
+ str);
}
}
B.
Menggabungkan String
Seringkali dalam pemrograman kita
perlu menggabungkan String untuk
mendapatkan
String baru. Kita dapat menggunakan operator (+) untuk
menggabungkan
beberapa String.
Contoh
penggunaan :
Stringku = “Ini adalah
contoh”+”penggabungan String”;
Kita
juga dapat menggunakan operator += untuk menggabungkan variabel String,
misalnya
seperti contoh berikut :
String kata = ”Ini perkataan”;
Kata += “saya sendiri”;
Contoh
:
class
MenggabungString {
public static void main(String[] args) {
String str;
str="Selamat Datang
"+" Mahasiswa Ilmu Komputer";
System.out.println(str);
str
+="\nUniversitas Gadjah Mada";
System.out.println(str);
}
}
C.
Membandingkan Dua String
Untuk membandingkan dua objek
String, kita dapat menggunakan fungi
sebagai
berikut :
equals(String
s)
Dengan fungsi ini, maka objek
string yang bersangkutan akan dibandingkan
dengan objek string s, pada
parameter fungsi ini, dengan membedakan antara
huruf besar dengan huruf kecil.
equalsIgnoreCase(String
s)
Dengan fungsi ini, maka objek
string yang bersangkutan akan dibandingkan
dengan objek string s, pada
parameter fungsi ini, dengan tanpa
memperdulikan perbedaan antara
huruf besar dengan huruf kecil.
Kedua fungsi diatas akan
menghasilkan nilai boolean true apabila benar dan
false apabila salah.
Contoh
:
class
MembandingkanString {
public static void main(String[]
args) {
String str1 =
"Ilmu";
String str2 =
"Komputer";
String str3 =
"IlmuKomputer";
System.out.println("String
1:"+str1);
System.out.println("String
2:"+str2);
System.out.println("String
3:"+str3);
System.out.println("String
1 = String 3 ==> "+str1.equals(str3));
System.out.println("String
2 = String 3 ==> "+str2.equals(str3));
System.out.println("String
1 + String 2 = String 3 ==> "+(str1+str2).equals(str3));
String str4 =
"Universitas Gadjah Mada";
String str5 =
"universitas gadjah mada";
System.out.println("String
4:"+str4);
System.out.println("String
5:"+str5);
System.out.println("Perintah
Pembandingan dibawah mengabaikan antara huruf besar dengan
huruf kecil");
System.out.println("String 4 = String 5 ==>
" +str4.equalsIgnoreCase(str5));
System.out.println("String 4
+ String 5 = String 5 + String 4 ==>+(str4+str5).equalsIgnoreCase(str5+str4));
String str6 = "MIPA";
String str7 = new String(str6);
String
str8 = "mipa";
String str9 =
"MIPA";
System.out.println("String
6:"+str6);
System.out.println("String
7:"+str7);
System.out.println("String 8:"+str8);
System.out.println("String
9:"+str9);
System.out.println("Perintah
Pembandingan dengan ==");
System.out.println("String
6 = String 7 ==> "+ (str6==str7));
System.out.println("String
6 = String 8 ==> "+ (str6==str8));
System.out.println("String
6 = String 9 ==> "+ (str6==str9));
}
}
D.
Menentukan Awal Dan Akhir String
Untuk menentukan awal dan akhir
String, kita dapat menggunakan dua fungsi
utama,
yaitu :
startsWith(String
s)
Dengan fungsi ini, maka objek
String yang bersangkutan akan diperiksa,
apakah diawali oleh objek String
s, pada parameter fungsi ini.
endsWith(String
s)
Dengan fungsi ini, maka objek
string yang bersangkutan akan diperiksa,
apakah diakhiri oleh objek string
s, pada parameter fungsi ini.
Fungsi diatas akan menghasilkan
nilai boolean true bila benar dan false bila salah.
Contoh
:
class
AwalAkhirString{
public
static void main(String[] args) {
String
str1 = "Ilmu Komputer Matematika dan Ilmu Pengetahuan Alam Universitas Gadjah
Mada";
System.out.println(str1.startsWith("Ilmu"));
System.out.println(str1.endsWith("Ilmu"));
System.out.println(str1.startsWith("lmu",1));
System.out.println(str1.startsWith("lmu",2));
System.out.println(str1.startsWith("lmu",3));
System.out.println(str1.startsWith("Komp",7));
System.out.println(str1.startsWith("Komp",6));
System.out.println(str1.startsWith("Komp",5));
System.out.println(str1.endsWith("Mada"));
System.out.println(str1.startsWith("Mada"));
}
}
E.
Mengurutkan String
Dapat juga melakukan pengurutan
string dengan method compareTo().
Method
ini membandingkan karakter-karakter pada String secara berurutan dari awal
String.
Misalnya string pertama bernilai “a” dan string kedua bernilai “b”, maka
apabila
Stringpertama.compareTo(Stringkedua) akan menghasilkan nilai negatif (<0)
dan
apabila dilakukan sebaliknya akan menghasilkan nilai positif (>0). Nilai 0
akan
dihasilkan
apabila string pertama dan kedua sama.
Contoh
:
class
UrutanString{
public static void main(String[]
args) {
String []
nama={"Mangga","Anggur","Apel","Jeruk","Nanas","Pepaya"};
String temp;
System.out.println("Nama
-Nama Buah Sebelum Diurutkan");
for (int i=0;
i<nama.length; i++){
System.out.println(i+1+"
"+nama[i]+" ");
}
//Mengurutkan
nama buah
System.out.println("==================================");
System.out.println("Nama -Nama
Buah Setelah Diurutkan");
for (int i=0;
i<(nama.length-1); i++){
for (int j=0; j<(nama.length-1); j++){
if (nama[j].compareTo(nama[j+1])>0){
temp=nama[j+1];
nama[j+1]=nama[j];
nama[j]=temp;
}
}
}
for (int i=0; i<nama.length; i++){
System.out.println(i+1+"
"+nama[i]);
}
}
}
F.
Mendapatkan Panjang String
Kita dapat memperoleh panjang string
dengan menggunakan method length();
seperti
contoh berikut ini :
String
panjang = “ini panjangnya 17”;
System
out.println(panjang.length());
Contoh
:
class
PanjangString {
public static void main(String[] args) {
String str="Selamat Datang di
Ilmu Komputer UGM";
int panjang;
panjang = "Selamat Datang di
Ilmu Komputer".length();
System.out.println("Variabel
Str : " + str);
System.out.println("Panjang
Variabel Str : " + str.length());
System.out.println("Panjang
Variabel Panjang : " + panjang);
}
}
G.
Mencari Posisi Karater Atau SubString Dari String
Ada dua method yang dapat digunakan
untuk mencari posisi karakter dari
string
dan dua method untuk mendapatkan posisi subString dari string.
Method untuk
mencari posisi karakter pada String :
indexOf(char
karakter)
Memerlukan argumen berupa
karakter dan akan mengembalikan nilai posisi
indeks dari karakter yang dicari.
Posisi yang dikembalikan adalah posisi
pertama dari karakter yang
ditemukan. Bila karakter tidak ditemukan, maka
akan mengembalikan nilai -1.
indexOf(char
karakter, int indeks)
Sama dengan sebelumnya, tetapi
memerlukan argumen tambahan, yaitu
indeks posisi awal pencarian
dalam integer.
Method untuk
mencari posisi subString pada String :
indexOf(String
Str)
Penggunaan dan fungsi sama dengan
method untuk char.
indexOf(String str, ont indeks)
Penggunaan dan fungsi sama dengan
method untuk char.
Contoh
:
class
PosisiKarakter {
public
static void main(String[] args) {
String str1 = "Ilmu Komputer
Matematika dan Ilmu Pengetahuan Alam Universitas Gadjah Mada";
System.out.println(str1.indexOf("Komputer"));
System.out.println(str1.indexOf("Komputer",10));
System.out.println(str1.lastIndexOf("Matematika"));
System.out.println(str1.lastIndexOf("Matematika",10));
System.out.println(str1.lastIndexOf("Matematika",20));
System.out.println(str1.indexOf(97));
System.out.println(str1.indexOf(97,7));
System.out.println(str1.lastIndexOf(97));
System.out.println(str1.lastIndexOf(97,7));
}
}
H.
Mendapatkan SubString dari String
Untuk mendapatkan subString dari
string, dapat menggunakan dua fungsi
yaitu
:
subString(int
indeks)
Sebuah
string akan dihasilkan oleh fungsi ini, yaitu karakter pertama dari string yang
dihasilkan
adalah karakter ke-index dari objek string yang menggunakan fungsi ini.
subString(int
indeksAwal, int indexAkhir)
Sebuah
string akan dihasilkan oleh fungsi ini, yaitu karakter pertama dari string yang
dihasilkan
adalah karakter ke-indexAwal dari objek string yang menggunakan fungsi
ini
dan karakter terakhir dari string yang dihasilkan adalah karakter ke-indexAkhir
dikurangi
1 dari string yang menggunakan fungsi ini.
I.
Memodifikasi String
Ada dua cara yang dapat digunakan
untuk melakukan modifikasi pada string,
yaitu
method replace dan trim. Method replace digunakan untuk membuat objek
string
baru yang melakukan penggantian atau perubahan pada karakter tertentu dari
string.
Method trim digunakan untuk menghilangkan spasi/whitespace pada awal dan
akhir
dari string dan menyimpannya dalam objek string baru.
J.
Membuat Array Karakter Dari String
Kita dapat membuat array bertipe
char dari variabel string dengan
menggunakan
method toCharArray() dari class string. Karena method ini
mengembalikan
array bertipe char, maka kita perlu mendeklarasikan variabel bertipe
array
char untuk menyimpan hasil char array dari string.
Selain
method toCharArray(), juga ada method getChars(). Untuk menggunakan method
getChars() diperlukan empat argumen, yaitu :
1. Awal posisi pada string dalam
integer
2. Akhir posisi pada string dalam
integer
3. Nama variabel array char yang
digunakan untuk menyimpan
4. Posisi indeks pertama untuk
menyimpan karakter pertama dalam integer.
Contoh
:
class
ArrayKarakter{
public
static void main(String[] args) {
String str="Ilmu Komputer UGM";
char[] arraystr=str.toCharArray();
System.out.println("String
: " +str);
System.out.println("String
Baru [toCharArray]: ");
for (int i=0; i<arraystr.length ;
i++){
System.out.println(arraystr[i]);
}
System.out.println("String
Baru [getChars]: ");
char[]
getstr=new char[10];
str.getChars(5,13,getstr,0);
for
(int i=0; i<getstr.length ; i++){
System.out.println(getstr[i]);
}
}
}
K.
Mendapatkan String Dari Array Karakter
Selain mengubah string menjadi array
char, class String juga menyediakan
method
untuk mendapatkan objek String dari array bertipa char[]. Method tersebut
adalah
: copyValueOf(char[] arraychar).
Selain
itu, juga mendapatkan nilai integer dari string dengan cara
menggunakan
method parseInt dari class integer.
Misalnya
:
String kode = “345”;
Int bil = Integer.parseInt(kode);
Contoh:
class
StringArray{
public
static void main(String[] args) {
char[] arraystr={'I','L','M','U',' ','K','O','M','P','U','T','E','R'};
System.out.println("Array Char ");
for (int i=0; i<arraystr.length ;
i++){
System.out.println(arraystr[i]);
}
System.out.println("String Baru
: ");
String
str=String.copyValueOf(arraystr);
System.out.println(str);
}
}
L.
StringBuffer
StringBuffer adalah pasangan class
String yang menyediakan banyak fungsi
string
yang umum. StringBuffer merepresentasikan urutan karakter yang dapat
dikembangkan
dan ditulis ulang. StringBuffer dapat disisipi karakter dan subString di
tengahnya,
atau ditambah di belakangnya.
Contoh
:
class
StringBufferku{
public
static void main(String[] args) {
StringBuffer sb = new StringBuffer();
String kata="ILMU
KOMPUTER";
b.append("PRODI
").append(kata).append(" UGM");
System.out.println(sb.toString());
System.out.println(sb);
}
}