Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java “ABC”和新字符串(“ABC”)之间有什么区别?_Java_String_Difference - Fatal编程技术网

Java “ABC”和新字符串(“ABC”)之间有什么区别?

Java “ABC”和新字符串(“ABC”)之间有什么区别?,java,string,difference,Java,String,Difference,String str=ABC和String str=new StringABC之间有什么区别?String 在Java中,字符串是一个字符串,允许您创建一个新字符串,而无需执行新的StringABC。但是字符串s=ABC和字符串s=new StringABC的操作不同 从javadoc获取: 初始化新创建的字符串对象,使其表示 与参数相同的字符序列;[……] 除非需要原始的显式副本,否则使用此构造函数 是不必要的,因为字符串是不可变的 换句话说,执行String s=new StringABC将

String str=ABC和String str=new StringABC之间有什么区别?

String 在Java中,字符串是一个字符串,允许您创建一个新字符串,而无需执行新的StringABC。但是字符串s=ABC和字符串s=new StringABC的操作不同

从javadoc获取:

初始化新创建的字符串对象,使其表示 与参数相同的字符序列;[……]

除非需要原始的显式副本,否则使用此构造函数 是不必要的,因为字符串是不可变的

换句话说,执行String s=new StringABC将创建String的新实例,而String s=ABC将重用的实例(如果可用)

字符串常量池 字符串常量池是放置字符串对象引用集合的位置

字符串s=prasad仅在没有其他引用可用时创建新引用。通过使用运算符,您可以很容易地看到这一点

String s = "prasad";
String s2 = "prasad";

System.out.println(s == s2); // true
这张照片是从中国拍摄的

new Stringprasad始终创建一个新引用,换句话说,下面示例中的s和s2将具有相同的值,但不是相同的对象

String s = "prasad";
String s2 = new String("prasad");

System.out.println(s == s2); // false
图像取自。

String str=abc;是字符串文字,其中as String str=new Stringabc是字符串对象。