Strings str1 = "aaa" Strings str2 = "aaa" if ( str1 == str2 ){ System.out.println("等しい"); }else{ System.out.println("等しくない"); }
だと、結果は「等しい」になりますが、javaはstr1とstr2の参照先を同じ位置に指定しているので、正しく比較出来ているわけではありません。 なので、.equalsメソッドをつかいます。
if ( str1.equals(str2) ){ System.out.println("等しい"); }else{ System.out.println("等しくない"); }
で、内容が比較された上で、「等しい」になります。
equalsメソッドを使った上で、等しくない場合結果をtrueにしたかった場合にはどうすればいいでしょう。
if (!( str1.equals(str2))){ System.out.println("等しくない"); }else{ System.out.println("等しい"); }
とすることで、等しくない場合にtrueにできます。
(str1.equals(str2)はtrueですので、!(str1.equals(str2)はfalseになります。
条件式のときは、 カッコで囲まなくてはいけないので、
if(!( str1.equals(str2))){…}
のように書かなければなりません。