Mungkin anda bingung bagaimana cara melakukan komparasi String pada bahasa pemrograman java? Sudah mencoba menggunakan simbol “==” namun ternyata salah? Atau mungkin tidak tahu bagaimana cara menentukan urutan dari beberapa kalimat? Artikel ini akan menjelaskan bagaimana cara melakukan komparasi String pada bahasa pemrograman java. Sebelumnya, java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung di Sun Microsystems, yang saat ini merupakan bagian dari Oracle dan dirilis tahun 1995. Untuk melakukan komparasi String, kita bisa menggunakan syntax .equal().
Jangan menggunakan symbol “==”
1 2 3 4 5 6 7 8 9 | String x = "Solusi Kode"; String y = "Solusi Kode";
// Cara membandingkan yang Salah if(x == y) { System.out.println("sama"); } else { System.out.println("tidak sama"); }
|
Penggunaan simbol “==” pada saat membandingkan String bukan lah hal yang tepat pada bahasa pemrograman java. Hal ini dikarenakan simbol “==” digunakan untuk membandingkan object. Bukan digunakan untuk membandingkan nilai nya (Dalam hal ini yaitu bukan membandingkan kalimatnya).
Penggunaan Fungsi equal
1 | "Solusi Kode".equals("Solusi Kode");
|
Syntax equal digunakan untuk membandingkan antar 2 kalimat. Pada dasarnya, kita hanya menambahkan syntax .equal(“String ke dua yang ingin di bandingkan) pada String pertama. Akan bernilai true (benar) jika dua kalimat tersebut sama . Akan bernilai false (salah) jika dua kalimat tersebut tidak sama.
Penggunaan Fungsi equalsIgnoreCase
1 | "Solusi Kode".equalsIgnoreCase("SoLUSi KODe");
|
Berbeda dengan equal, equalsIgnoreCase digunakan untuk membandingkan 2 kalimat, tanpa melihat besar kecilnya huruf tiap kalimat. Cara penggunaan nya sama seperti syntax equal. Akan bernilai true (benar) jika dua kalimat tersebut sama . Akan bernilai false (salah) jika dua kalimat tersebut tidak sama huruf huruf nya.
Penggunaan Fungsi compareTo
1 | "Solusi Kode".equalsIgnoreCase("SoLUSi KODe");
|
Fungsi compareTo digunakan untuk membandingkan atau compare 2 kalimat dan mengetahui selisih antar huruf dari 2 kalimat tersebut. Hasil selisih tersebut menunjukkan urutan apakah lebih dahulu kalimat pertama ataukah kalimat yang kedua. Biasanya fungsi ini digunakan pada bagian percabangan (kondisi if) untuk menentukan mana yang lebih kecil urutannya.
1 2 3 4 5 6 7 8 9 10 | String s1 = "Andi"; String s2 = "Budi";
if(s1.compareTo(s2) > 0){ System.out.println("1. " + s2); System.out.println("2. " + s1); } else { System.out.println("1. " + s1); System.out.println("2. " + s2); }
|
Pada contoh kode di atas, kita cek urutan kalimat tersebut dengan memeriksa apakah selisihnya lebih dari 0 ataukah kurang dari 0. Jika lebih dari 0, maka kalimat yang pertama lebih besar dibandingkan dengan kalimat yang kedua. Jika selisihnya kurang dari 0, maka kalimat yang pertama lebih kecil dibandingkan dengan kalimat yang kedua.
Contoh Program
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | import java.io.*;
public class MyClass { public static void main(String args[]) { String s1 = "Solusi Kode"; String s2 = "Masalah Kode"; String s3 = "SoLUSI kodE"; System.out.println(s1); System.out.println(s2); System.out.println(s3); System.out.println(); // Membandingkan 2 nilai System.out.print(s1 + " == " + s2 + " ? "); System.out.println(s1.equals(s2)); System.out.print(s1 + " == " + s3 + " ? "); System.out.println(s1.equals(s3)); System.out.println(); // Membandingkan 2 nilai tanpa melihat besar kecil huruf System.out.println("Mengabaikan huruf besar kecil : "); System.out.print(s1 + " == " + s3 + " ? "); System.out.println(s1.equalsIgnoreCase(s3)); System.out.println(); // Membandingkan urutan sesuai abjad System.out.println("Urutan Kalimat : "); if(s1.compareTo(s2) > 0){ System.out.println("1. " + s2); if(s1.compareTo(s3) > 0){ System.out.println("2. " + s3); System.out.println("3. " + s1); } else { System.out.println("2. " + s1); System.out.println("3. " + s3); } } else { System.out.println("1. " + s1); if(s2.compareTo(s3) > 0){ System.out.println("2. " + s3); System.out.println("3. " + s2); } else { System.out.println("2. " + s2); System.out.println("3. " + s3); } } System.out.println(); } }
|
Program di atas adalah contoh program java untuk membandingkan String dengan menggunakan berbagai fungsi.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | Solusi Kode Masalah Kode SoLUSI kodE
Solusi Kode == Masalah Kode ? false Solusi Kode == SoLUSI kodE ? false
Mengabaikan huruf besar kecil : Solusi Kode == SoLUSI kodE ? true
Urutan Kalimat : 1. Masalah Kode 2. SoLUSI kodE 3. Solusi Kode
|
Tulisan di atas adalah hasil program java tentang membandingkan String.
Penutup
Jadi, untuk membandingkan String pada bahasa pemograman java, kita bisa menggunakan fungsi equal , equalsIgnoreCase , dan juga compareTo. Tiap tiap fungsi tersebut memiliki kegunaan yang berbeda beda walaupun mirip. Jika ada yang ingin ditanyakan, silakan berkomentar di postingan ini.
Komentar
Posting Komentar