誰かが私に次のJavaコードを説明できますか
String a = "1";
if(a == "1") {
//print compare 1 is true;
} else {
//print compare 1 is false;
}
if(a.equals("1")) {
//print compare 2 is true;
} else {
//print compare 2 is false;
}
それは次のようになります
compare 1 is false
compare 2 is true
私が持っている唯一の説明は、値自体ではなくメモリアドレスを比較することです。しかし、よくわかりません。光を当ててください。in .Net == 演算子は、文字列の内容を比較するためにオーバーロードされています。