有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

由常量表达式创建的java字符串

考虑以下代码:

String s = "Dear";
String s1 = "My"+ s;  
String s2 = "MyDear"; 
String s3 = "My"+"Dear";

这里s1和s3是由字符串常量表达式创建的

System.out.println(" s2 == s3 is " + (s2 == s3)); //true

结果是真的,因为s2和s3都指向同一个内部字符串对象,但是

System.out.println(" s1 == s2 is " + (s1 == s2)); //false

来到法斯。为什么


共 (1) 个答案

  1. # 1 楼答案

    s1不是由常量表达式创建的。s3是