答案应该是 D:
String s1 = “abc”; //"abc", 存放在常量池中,s1的地址也指向常量池;
String s2 = new String(“abc”); // new出来的是一个地址,"abc"常量也是一个地址,这里同事创建了两个对象;
System.out.println(s1==s2);
因为是两对象 比较的是地址,所以是false
String s3 = “你好吗”;
String s4 =”你”;
String s5 =”好吗”;
System.out.println(s3==(s4+s5))
S3是常量 而S4+S5是引用类型,传递的是地址值
引用类型跟常量比较肯定是false
|