/*
文字列同士の比較では==を用いてはいけないのは
比較が正しく行われるときと、正しく行われないときがあるから。
文字列同士の比較では==を用いてはいけないのは
比較が正しく行われるときと、正しく行われないときがあるから。
/
public class Mojiretsu{
public static void main(String args[]){
String strA="ABC";
String strB="ABC";
System.out.println("文字列の比較「==」ABC");
if(strA==strB){
System.out.println("strAとsrtBは等しい");
}else{
System.out.println("strAとstrBは等しくない");
}
strA=strA+"DEF";
strB=strB+"DEF";
System.out.println("文字列の比較「==」ABCDEF");
if(strA==strB){
System.out.println("strAとsrtBは等しい");
}else{
System.out.println("strAとstrBは等しくない");
}
System.out.println("文字列の比較「equals」ABCDEF");
if(strA.equals(strB)){
System.out.println("strAとstrBはequals");
}else{
System.out.println("strAとstrBはequalsでない");
}
}
}
[実行結果]
C:\java\D05>javac Mojiretsu.java
C:\java\D05>java Mojiretsu
文字列の比較「==」ABC
strAとsrtBは等しい
文字列の比較「==」ABCDEF
strAとstrBは等しくない
文字列の比較「equals」ABCDEF
strAとstrBはequals
文字列の比較「==」ABC
strAとsrtBは等しい
文字列の比較「==」ABCDEF
strAとstrBは等しくない
文字列の比較「equals」ABCDEF
strAとstrBはequals