可能重复:
String is not equal to string?
What makes reference comparison (==) work for some strings in Java?
有人可以按照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
我只有解释是它比较内存地址而不是值本身。但我不确定。请稍等一下。在.Net ==运算符重载以比较字符串的内容。
答案 0 :(得分:3)
使用"1".equals(a)
,String是一个对象,因此请使用equals()
进行比较
答案 1 :(得分:0)
我了解==
运算符是比较“它是同一个对象吗?”
对象a
与常量字符串"1"
不是同一个对象。
所以返回false