读书人

Java小实验之10

发布时间: 2012-10-30 16:13:36 作者: rapoo

Java小实验之十

public class Tst10 {public static void main(String[] args){  String str="ABC";  if(str == "ABC"){  System.out.println("One");  }  if(str == new String("ABC")){  System.out.println("Two");  }}}

运行结果:
One



==比较的是变量的值,而equals比较的是引用的内容。

第7行:
str 和 "ABC" 都指向 字符串池中的“ABC”字符串,所以它们的值是相等的。

第10行:
new 操作导致产生新的对象,故该对象的引用比如与 字符串池中的“ABC”的引用不同。

所以,结果是输出One, 而没有输出Two。


读书人网 >编程

热点推荐