编辑:我不认为这是现有问题的副本。我的2声明字符串的引用指向同一个内存位置,为什么我的==
(引用比较)给出错误?它不是一个字符比较的字符。
我正在编写测试文件,以便更好地理解Java String引用和比较。我希望我的代码的第3行是:
应该是真的:是的
为什么不呢?
public class testr {
public static void main(String[] args) {
// TODO Auto-generated method stub
String s = "s";
String t = "s";
System.out.println("String s hashcode: " + s.hashCode());
System.out.println("String t hashcode: " + t.hashCode());
System.out.println("Should be true: " + s==t);
}
}
输出:
String s hashcode: 115
String t hashcode: 115
false