首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

关于常量池的有关问题(==的有关问题)

2012-09-09 
关于常量池的问题(的问题)public class Test2{public static void main(String[] args){//常量池里的数

关于常量池的问题(==的问题)
public class Test2
{
public static void main(String[] args)
{
//常量池里的数据 编译时就确定下来了
String s1 = "疯狂java";
String s2 = "疯狂";
String s3 = "java";
String s4 = "疯狂" + "java";
String s5 = "疯" + "狂" + "java"; //常量池里的字符串
String s6 = s2 + s3; // 不能在编译期间确定下来,不能引用常量池中的字符串。
String s7 = new String("疯狂java");//new了一个新对象。
System.out.println(s1 == s4); //true
System.out.println(s1 == s5); //true
System.out.println(s1 == s6); //flase
System.out.println(s1 == s7); //flase


}
}
不明白 String s6 = s2 + s3 为什么不能在编译期间确定下来。就算不能确定下来,那么运行期间还是用的常量池啊。
所以倒数第二行 求解释。菜鸟献丑了

[解决办法]
因为s2 s3是变量
[解决办法]
http://topic.csdn.net/u/20120607/07/9d3a5948-ca38-4eb9-a4f8-63400b34e13a.html

不多说不解释

热点排行
Bad Request.