. .

BAGIAN KE LIMA : JAVA COMPARING STRINGS - compareTo compareToIgnoreCase PADA NETBEANS IDE

Posted by CHRISTIANTO D,WIBOWO | D3MI-2016 STMIK BUMI GORA On Selasa, November 29, 2016 No comments

Terimakasih pada sumber :
Sebelum kita meneruskan mempelajari pembelajaran ini, ada baiknya kita baca artikel-artikel sebelumnya yang terhubung dengan langkah-langkah pembelajaran ini (Link) BAHASA PEMROGRAMAN JAVA PADA NETBEANS IDE.

Metode compareTo () digunakan untuk membandingkan dua string leksikografi. Setiap karakter kedua string diubah menjadi nilai Unicode untuk perbandingan. Jika kedua string sama maka metode ini mengembalikan 0 dan yang lain akan mengembalikan nilai positif atau negatif. hasilnya positif jika string pertama adalah leksikografis lebih besar dari string kedua pun hasilnya akan negatif.
Metode ini dapat digunakan sebagai berikut:
int compareTo(String str)
Berikut perbandingan antara string literal. Contohnya :
string1.compareTo (string2) di mana string1 dan string2 adalah String literal.
int compareTo(Object obj)
Ini adalah perbandingan antara string dan objek. Contohnya :
string1.compareTo("Just a String object") di mana string1 adalah literal yang nilainya akan dibandingkan dengan string yang ditentukan dalam metode argumen. Di sini kita memiliki tiga Strings dan kita membandingkan mereka dengan masing-masing metode lain menggunakan compareTo ().
public class CompareToExample {
   public static void main(String args[]) {
       String str1 = "String method tutorial";
       String str2 = "compareTo method example";
       String str3 = "String method tutorial";

       int var1 = str1.compareTo( str2 );
       System.out.println("str1 & str2 comparison: "+var1);

       int var2 = str1.compareTo( str3 );
       System.out.println("str1 & str3 comparison: "+var2);

       int var3 = str2.compareTo("compareTo method example");
       System.out.println("str2 & string argument comparison: "+var3);
   }
}

Output :
str1 & str2 comparison: -16
str1 & str3 comparison: 0
str2 & string argument comparison: 0

Kita dapat membandingkan satu string dengan yang lainnya. Ketika membandingkan, Java akan menggunakan nilai heksadesimal huruf sendiri. Sebagai contoh, jika kita ingin membandingkan kata "Ape" dengan kata "App" untuk melihat mana yang harus didahulukan, kita dapat menggunakan metode String inbuilt disebut compareTo. Mari kita lihat cara kerjanya.
/* kode riil di aplikasi Netbeans IDE */
packages prjstring;
public class StringManipulation {
public static void main (String[] args) {
  int result;
String Word1="Ape";
String Word2="App";
result=Word1.compareTo(Word2);
if (result<0){
System.out.println("Word1 less than Word2");
}
else if(result>0){
System.out.println("Word1 more than Word2");
}
else if(result==0){
System.out.println("The same Word");
}

}
}
Kita telah mempunyai dua variabel string mengandung kata-kata "Ape" dan "App". Metode compareTo kemudian berada pada baris ini:
result = Word1.compareTo( Word2 );
Metode compareTo mengembalikan nilai. Nilai yang dikembalikan akan lebih besar dari 0 else if(result>0), kurang dari 0 if (result<0), atau memiliki nilai nol else if(result==0). Jika word1 datang sebelum word2, maka nilai yang dikembalikan akan kurang dari 0. Jika word1 datang setelah word2 maka nilai yang dikembalikan akan lebih besar dari 0. Jika dua kata yang identik maka nilai 0 akan dikembalikan.
Jadi, kita perlu untuk menetapkan nilai yang compareTo kembali ke variabel. Kita menempatkan nilai dalam sebuah variabel integer disebut hasil - result = Word1.compareTo( Word2 );IF Statements dalam kode hanya untuk tes melihat apa yang ada dalam variabel hasil
Namun, ketika kitaa membandingkan satu string teks dengan yang lain, Java membandingkan nilai hexadecimals sebagai dasarnya, bukan huruf yang sebenarnya. Karena huruf besar memiliki nilai heksadesimal yang lebih rendah dari yang kecil, huruf besar "A" di "App" akan datang sebelum huruf kecil "a" dalam "Ape". Cobalah sendiri. Ganti "Ape" menjadi "spe" dalam kode kita. Output akan membaca "word1 lebih dari word2", yang berarti bahwa Java akan menempatkan kata "Ape" setelah kata "app" abjad.
/* kode riil di aplikasi Netbeans IDE */
packages prjstring;
public class StringManipulation {
public static void main (String[] args) {
  int result;
String Word1="ape";
String Word2="App";
result=Word2.compareTo(Word1);
if (result<0){
System.out.println("Word1 less than Word2");
}
else if(result>0){
System.out.println("Word1 more than Word2");
}
else if(result==0){
System.out.println("The same Word");
}

}
}

Untuk mengatasi masalah tersebut, ada metode terkait yang disebut compareToIgnoreCase. Seperti namanya menyarankan, huruf kecil dan huruf besar diabaikan. Gunakan ini dan "Ape" akan datang sebelum abjad "App".
Metode compareToIgnoreCase () mirip dengan metode compareTo () karena juga membandingkan dua string leksikografi. Satu-satunya perbedaan antara mereka adalah bahwa compareToIgnoreCase () mengabaikan kasus (besar atau kecil) saat membandingkan dua string. Mirip dengan compareTo () metode ini juga membandingkan string berdasarkan nilai Unicode masing-masing karakter mereka. Ia mengembalikan 0 ketika senar sama lain itu mengembalikan nilai positif atau negatif.
int compareToIgnoreCase(String str)
Di bawah ini contoh kami memiliki tiga literal String yang memiliki nilai yang sama tapi kasus ini berbeda. string1 adalah dalam huruf besar, string2 dalam huruf kecil dan string3 adalah campuran huruf besar dan huruf kecil. Kami menggunakan metode compareToIgnoreCase () untuk membandingkan string ini.
public class CompareExample {
   public static void main(String args[]) {
       String string1 = "HELLO";
       String string2 = "hello";
       String string3 = "Hello";

       int var1 = string1.compareToIgnoreCase(string2);
       System.out.println("string1 and string2 comparison: "+var1);

       int var2 = string1.compareToIgnoreCase(string3);
       System.out.println("string1 and string3 comparison: "+var2);

       int var3 = string1.compareToIgnoreCase("HeLLo");
       System.out.println("string1 and HeLLo comparison: "+var3);
   }
}

Outputnya :
string1 and string2 comparison: 0
string1 and string3 comparison: 0
string1 and HeLLo comparison: 0
Selanjutnya, kita akan melihat metode String lain yang berguna - indexOf.

0 komentar:

Posting Komentar