Manipulasi String di Java

Manipulasi String di Java

String merupakan salah satu tipe data yang sangat sering digunakan dalam membuat program. Dalam Java, string direpresentasikan dalam kelas String (atau lebih tepatnya java.lang.String). Kelas ini memiliki banyak sekali method yang sangat berguna dalam proses manipulasi String. Di sini, akan ditunjukkan beberapa method yang lumayan penting dan cara penggunaannya.

Cara Membuat String

Pada dasarnya, string merupakan kelas. Sehingga, penggunaannya pun sama seperti kelas-kelas lainnya. Yaitu dengan cara instansiasi:

String kalimat = new String("bisa komputer - tempatnya segala tutorial komputer");

Di sini bisa kita lihat bahwa kita membuat object kalimat dengan menginstansiasi kelas String. Tapi, ada bentuk lain pada representasi string di Java. Baris berikut juga merupakan cara membuat string:

"ini adalah instance dari string"

Bingung? jangan khawatir. kalimat maupun "ini adalah instance dari string" sama-sama merupakan instance dari string. Kalau tidak percaya, coba jalankan kode berikut:

String kalimat = new String("bisa komputer - tempatnya segala tutorial komputer");
System.out.println("panjang kalimat: " + kalimat.length());
System.out.println("panjang string : " + "ini adalah instance dari string".length());

Dari sini kita bisa buat satu lagi cara meng-instantiate string:

String kalimat = "ini adalah instance dari string";

Cara Menghitung Jumlah Karakter dalam string

Untuk menghitung jumlah karakter atau juga panjang dari suatu string, kita menggunakan method length():

System.out.println("Panjang kalimat: " + kalimat.length());

Cara Memanipulasi Besar/Kecil Karakter

Untuk mengubah karakter menjadi huruf besar, kita menggunakan toUpperCase(). Begitu juga sebaliknya, untuk mengecilkan, kita pakai toLowerCase():

System.out.println("Uppercase kalimat: " + kalimat.toUpperCase());
System.out.println("Lowercase kalimat: " + kalimat.toLowerCase());

hasilnya:

Uppercase kalimat: BISA KOMPUTER - TEMPATNYA SEGALA TUTORIAL KOMPUTER
Lowercase kalimat: bisa komputer - tempatnya segala tutorial komputer

Cara Mengganti Sebagian dari Suatu string

Cara mengganti sebagian dari isi suatu string, kita memakai method replace(). Perlu dicatat di sini, bahwa replace() akan mengganti semua kata yang sama dengan penggantinya. Apabila kita hanya ingin mengganti satu saja, maka bisa menggunakan method replaceFirst():

System.out.println("Ubah 'komputer' menjadi 'xbox 360': " + kalimat.replace("komputer", "xbox 360"));
System.out.println("Ubah 'komputer' menjadi 'xbox 360': " + kalimat.replaceFirst("komputer", "xbox 360"));

menghasilkan output

Ubah 'komputer' menjadi 'xbox 360': bisa xbox 360 - tempatnya segala tutorial xbox 360
Ubah 'komputer' menjadi 'xbox 360': bisa xbox 360 - tempatnya segala tutorial komputer

Cara Membandingkan Isi dari string

Pada bahasa pemrogramman yang lain, Anda biasa melakukan pengecekan string kosong dengan menggunakan syntax seperti ini:

if(kalimat == ""){
//eksekusi kode jika benar
}

Pada java hal tersebut sangat tidak dianjurkan. Mengapa? Karena pada syntax di atas berarti kita melakukan perbandingan object, bukan isi object tersebut. Syntax yang benar dalam proses ini adalah dengan menggunakan method equals() atau bila Anda tidak ingin perilaku case-sensitive, equalsIgnoreCase().

Kalau Anda tidak percaya, Anda bisa menjalankan potongan kode berikut dan buktikan sendiri bagaimana hasilnya:

String kata1 = new String("ini kata");
String kata2 = new String("ini kata");

if(kata1 == kata2){
System.out.println("cara #1: isi kata sama");
} else {
System.out.println("cara #1: isi kata tidak sama");
}

if(kata1.equalsIgnoreCase(kata2)){
System.out.println("cara #2: isi kata sama");
} else {
System.out.println("cara #2: isi kata tidak sama");
}

Mencari Index dari Potongan Kata

Suatu saat, Anda mungkin akan butuh juga untuk mencari index dari suatu kata/karakter dalam satu kalimat. Untuk kebutuhan ini, bisa menggunakan method indexOf():

System.out.println("Posisi 'tempat' dalam kalimat: " + kalimat.indexOf("tempat"));

yang akan menghasilkan output:

Posisi 'tempat' dalam kalimat: 16

Ada catatan tambahan di sini. Kalau Anda perhatikan, hasil dari pencarian di atas adalah 16. Padahal, jika Anda menghitung manual, seharusnya hasilnya adalah 17. Karena huruf t ada di posisi 17. Mengapa bisa begini? hal ini disebabkan karena java menganut aturan zero based index. Yaitu, aturan dimana penghitungan index dimulai dari 0, bukan 1.

Baca Juga :  Tutorial Java: Bermain Matematika dengan Class Math

Mengetahui Apakah Terdapat Suatu Kata dalam Kalimat

Untuk mencari apakah di dalam suatu kalimat terdapat kata tertentu, Anda bisa menggunakan method contains():

System.out.println("Terdapat 'tempat' dalam kalimat: " + kalimat.contains("tempat"));

hasilnya:

Terdapat 'tempat' dalam kalimat: true

Cara Membangun String yang Cepat dan Hemat Memori

Kalian mungkin sudah mengetahui bagaimana cara membuat suatu kalimat panjang dari potongan-potongan string, misal:

String kalimatBaru = new String("ini");
kalimatBaru += " adalah";
kalimatBaru += " cara";
kalimatBaru += " membuat";
kalimatBaru += " kalimat";

Tidak ada yang salah dengan potongan di atas. Tapi, itu adalah cara membuat kalimat yang boros memori dan lambat. Memang benar komputer sekarang sudah sangat cepat, prosesor dan memory juga relatif murah. Tapi, cara di atas sangat tidak dianjutkan untuk digunakan di platform mobile. Untuk itu, kita bisa menggunakan kelas StringBuilder:

StringBuilder builder = new StringBuilder();
builder.append("ini ");
builder.append("contoh ");
builder.append("kalimat ");
builder.append("pakai ");
builder.append("builder");
System.out.println("Hasil builder: " + builder.toString());

Cara Memecah Kalimat Berdasarkan Separator

Trik yang terakhir adalah bagaimana cara kita memecah kalimat, berdasarkan separator/pemisah. Sebagai contoh, terdapat kalimat:

String kalimatPakaiSeparator = "Bisa Komputer;tutorial,tips-trik;http://koran-indonesia/com/";

Yang ingin dipisah berdasarkan ;, menjadi:

Bisa Komputer
tutorial,tips-trik

http://koran-indonesia/com/

Untuk ini, kita bisa menggunakan method split():

String[] pecah1 = kalimatPakaiSeparator.split(";");
System.out.println("Hasil pecahan: ");
for(int counter = 0; counter < pecah1.length; counter++){
System.out.println(" " + pecah1[counter]);
}

Itu tadi beberapa cara memanipulasi string di java. Selamat bereksplorasi.