public class Test {
public static void main(String arg[]){
//堆地址不同
String s=new String("hello");//创建两个对象
String s1="hello";//创建一个对象 常量池中取
System.out.println(s==s1);//false
String a="a1";
String b="a"+1;
System.out.println(a==b);//true
String c="a0";
int d=0;
String e="a"+d;//此时d为变量
System.out.println(c==e);//false
//注意java区别java的编译期与运行期
String f="a0";
final int f1=0;
String f2="a"+f1;//此时d为变量
System.out.println(f==f2);//true
String g="a0";
final int g1=getDD();//运行期
String g2="a"+g1;
System.out.println(g==g2);//false
}
public static int getDD(){
return 1;
}
}
public static void main(String arg[]){
//堆地址不同
String s=new String("hello");//创建两个对象
String s1="hello";//创建一个对象 常量池中取
System.out.println(s==s1);//false
String a="a1";
String b="a"+1;
System.out.println(a==b);//true
String c="a0";
int d=0;
String e="a"+d;//此时d为变量
System.out.println(c==e);//false
//注意java区别java的编译期与运行期
String f="a0";
final int f1=0;
String f2="a"+f1;//此时d为变量
System.out.println(f==f2);//true
String g="a0";
final int g1=getDD();//运行期
String g2="a"+g1;
System.out.println(g==g2);//false
}
public static int getDD(){
return 1;
}
}