有如下一段代码,请选择其运行结果
public class StringDemo{
private static final String MESSAGE="qingyun";
public static void main(String [] args) {
String a ="qing"+"yun";
String b="qing";
String c="yun";
System.out.println(a==MESSAGE);
System.out.println((b+c)==MESSAGE);
}
} # true true# false false# false true# true falseMESSAGE和a在编译阶段值已确定,都可以视为常量池中的常量,且相同,所以a==MESSAGE
b+c虽然内容与MESSAGE相同,但b+c为动态创建,引用肯定和MESSAGE不同,所以(b+c)!=MESSAGE
b+c虽然内容与MESSAGE相同,但b+c为动态创建,引用肯定和MESSAGE不同,所以(b+c)!=MESSAGE