package test;
public class StringTest {
public static void main(String[] args) {
/* String s1 = "A";
String s2 = "A";
String s12 = "AB";
if(s1==s2)//值为true,说明s1和s2是同一对象
{
System.out.println("s1和s2是同一个对象");
}
if(s1.equals(s2))//值为true
{
System.out.println("s1和s2的值相同");
}
if(s1==s1+"B")
{
System.out.println("只修改值,不创建新对象");//值为false,说明当修改值是,重新创建对象
}
if(s12==s1+"B")
{
System.out.println("AB");//值为false
}
/* String s3 = new String("A");
String s4 = new String("A");
String s34 = new String("AB");
if(s3==s4)//值为false,说明new String 是重新创对象
{
System.out.println("s3和s4是同一个对象");
}
if(s3.equals(s4))//值为true
{
System.out.println("s3和s4的值相同");
}
if(s3==s3+"B")
{
System.out.println("只修改值,不创建新对象");//值为false,说明当修改值是,重新创建对象
}
if(s34==s3+"B")
{
System.out.println("AB");//值为false
}*/
StringBuffer sb1 = new StringBuffer("shi");
StringBuffer sb2 = new StringBuffer("shi");
if(sb1==sb2)
{
System.out.println("sb1和sb2是同一个对象");//false
}
if(sb1.equals(sb2))//false
{
System.out.println("sb1和sb2值相同");
}
if(sb1==sb1.append("yanlong"))
{
System.out.println("StringBuffer改变值不重新创建对象");//true
}
}
}