之间有什么区别
String str = new String("abc");
和
String str = "abc";
当你使用字符串文字时,可以将字符串嵌入,但是当你使用时,你将new String("...")获得一个新的字符串对象。
new String("...")
在此示例中,两个字符串文字均引用相同的对象:
String a = "abc"; String b = "abc"; System.out.println(a == b); // true
在这里,创建了2个不同的对象,它们具有不同的引用:
String c = new String("abc"); String d = new String("abc"); System.out.println(c == d); // false
通常,应尽可能使用字符串文字表示法。它更易于阅读,并且为编译器提供了优化代码的机会。