首页 > 试题广场 >

下面 Java 代码的运行结果为() public clas

[单选题]
下面 Java 代码的运行结果为()
public class Test {
    public static void main(String[] args) {
        String s1 = "nowcoder";
        String s2 = "coder";
        String s3 = ("now" + s2).intern();
        System.out.println(s1.equals(s3));
        System.out.println(s1 == s3);
    }
}
  • true
    true
  • false
    false
  • true
    false
  • false
    true
考察到的是编译期优化,"" ,和intern()的考点。
s3就是nowcoder,使用intern()判断当前字符串是否存在在常量池中,如果存在,返回常量池中的对象引用。这里因为s1创建的时候已经存放了。所以返回的也是s1的引用,使用==号比较自然也是true
发表于 2025-04-29 16:48:24 回复(0)