new String()和new String(””)都是申明一个新的空字符串,是空串不是null
1. String a=”a”; Strig c=”a”;输出比较是true
2.String b=new String (“b”);String c=new String (“b”);输出比较是false
进行区别概述,1只创建了一个字符在常量,存放在常量池里面,只有一个引用哦。2创建了两个对象,一个是”b”通过”“双引号创建的,另一个是通过new创建的.只不过他们创建的时期不同,
一个是编译期,一个是运行期
String a = “ab”;
String bb = “b”;
String b = “a”+ bb; //编译器不能确定为常量
System.out.println(a==b);
下一个内容,String是不可变的,因为是public final class。
一般变化较多的时候使用StrigBuffer 或者 StringBuildder。、
这两个区别,多线程与单线程。