我是 JAVA 编程的新手。我在我的书中读过
String a="Hello";
String b="Hello";
System.out.println(a==b);
这应该返回false,因为 a & b 指的是 String 对象的不同实例。
Bcoz 分配运算符比较对象的实例,但我仍然得到一个true。
我正在使用 Eclipse IDE。
书中的例子是这样的:
String s = "s";
String sToo = "s";
System.out.println(a == b);
System.out.println(s == sToo);
那段代码为 s == sToo 打印“false”。这是因为 s 和 sToo 是对 String 对象不同实例的引用。因此,即使它们具有相同的值,但在相等运算符的眼中它们并不相等。此外, s == “s” 打印为 false,因为字符串文字产生了 String 类的另一个实例。
书名:JAVA 7 for Absolute Beginners