menggunakan statement pernyataan if atau if-else dalam Java ada ke unikan tersendiri dalam operasi string dibandingkan dengan bahasa pemrograman yang lain. kasusnya dapat dilihat di bawah ini:
contoh kasus-1:
     ...
     String str = "aaa";
     if (str == "aaa"){
         // blok true
     } else {
        // blok false
     }
     ...
hasilnya pasti dong akan mengerjakan perintah pada blok true.
contoh kasus-2:
     ...
     String[] str = {"aaa","bbb","ccc"};
     //hasilnya sama dengan str[0]="aaa"; str[1]="bbb"; str[2]="ccc";
     if (str[0] == "aaa") {
         // blok true  
     } else {
         // blok false
     } 
     ...
hasilnya juga akan mengerjakan perintah pada blok true.
contoh kasus-3:
     ...
     String str = "aaa#bbb#ccc"; 
     String[] spstr = str.split("\\#"); 
     //hasilnya sama dengan spstr[0]="aaa"; spstr[1]="bbb"; spstr[2]="ccc";
     if (spstr[0] == "aaa") {
        // blok true
     } else {
        // blok false
     }
     ...
hasilnya mengerjakan perintah pada blok false :(, padahal nilai dari spstr[0]="aaa".:)
pada contoh kasus-3 dengan menggunakan method split pengunaan operator
 relasi == akan menghasilkan operasi logika false. nah, gimana solusinya?
 solusinya adalah: 
     ...
     String str = "aaa#bbb#ccc";
     String[] spstr = str.split("\\#");
     if (spstr[0].equals("aaa")) {  // ini dia solusinya!!!
        // blok true
     } else {
        // blok false
     }
     ...
maka hasilnya akan mengerjakan perintah pada blok true :).
 
No comments:
Post a Comment