Java中的字符串创建(内存使用)
在Java中,以下两段代码之间有区别吗?我正在寻找内存使用和字符串池方面的答案 第一:Java中的字符串创建(内存使用),java,string,Java,String,在Java中,以下两段代码之间有区别吗?我正在寻找内存使用和字符串池方面的答案 第一: String s = new String(); s = "abcdef"; 第二点: String s = new String("abcdef"); 谢谢。您在第一个对话框中创建并赋值。在第二个例子中,你只是做了一个创造。在第一个进程中,处理器活动几乎增加了两倍。说到记忆,没有区别 和字符串池对您的问题的解释: 在第一种情况下,创建两个字符串,一个为空,另一个为abc。。。。在第二种情况下,只有一种
String s = new String();
s = "abcdef";
第二点:
String s = new String("abcdef");
谢谢。您在第一个对话框中创建并赋值。在第二个例子中,你只是做了一个创造。在第一个进程中,处理器活动几乎增加了两倍。说到记忆,没有区别 和字符串池对您的问题的解释:
在第一种情况下,创建两个字符串,一个为空,另一个为abc。。。。在第二种情况下,只有一种。其中包含了很多关于这方面的信息。如果各种各样的问题和答案中有什么让你不明白的,那么一个具体的问题会更有用。这里的第一条评论是完全不正确的。这两种情况都会创建两个字符串对象。字符串文本被截取并存储在字符串池中。为什么内存没有差异?在第一种情况下,您实际上创建了两个字符串对象。@gregory561-在第二种情况下,您创建了两个字符串对象;这个文字不会神奇地消失——它会进入字符串池。