比较两个字符串文字

时间:2014-02-26 06:20:55

标签: java string literals

与我们可以使用==.equals()

执行的字符串进行比较

==我们知道它会检查引用,但在.equals()中它会检查内容。

假设有2个字符串说

String s =“SO”; String s1 =“SO”;

所以在这种情况下s1==ss.equals(s1)都会给出真实的。

但是here它给了我错误的

所以我认为+的优先级高于==

所以在这种情况下

System.out.println(""+s1==s);

它将被分割为(""+s1)==s,现在“”+“s1将是一个新的String,因此新的String永远不会等于s所以它的打印错误

我只是想知道我认为是否正确

1 个答案:

答案 0 :(得分:1)

""+s1在堆上创建一个新的String对象(因为它未声明为final)。所以,参考文献不一样。