1.
String a=new String("abc");到底创建了几个对象?一个或者两个
上面这句话中如果在常量池中已经存abc了,那么就只会创建一个对象(new String),如果不存在那么创建的还会有一个对象abc,如果以前创建过abc那么会直接从常量池中取出来
不会再创建一个新的对象abc.
说了无关话题就当是笔记:StringBuffer是没有实现equals方法的
StringBuffer a=new StringBuffer("123");
StringBuffer c=new StringBuffer("123");
String b="123";
System.out.println(a.equals(c));//false
System.out.println(b.equals(c));//false