【问题标题】:What's the difference between String and new String? [duplicate]字符串和新字符串有什么区别? [复制]
【发布时间】:2011-09-05 16:09:06
【问题描述】:

可能重复:
What is the purpose of the expression “new String(…)” in Java?

这两种说法有什么区别:

String a1 = new String("abc");

String a2 = "abc";

如果你能说明差异,那就太好了。

【问题讨论】:

标签: java


【解决方案1】:

第一个是创建一个新的 String 对象;第二个是有效地使用已经存在的一个(它是在加载类文件时创建的。)几乎没有理由使用String(String) 构造函数。

(我说实际上是因为有一种情况:如果您通过调用substring() 来分解一个巨大的String,然后丢弃原来的,则可以使用此构造函数来节省内存从子字符串创建新的Strings。不过,这确实是一个晦涩的案例。)

【讨论】:

  • 除非你想要两个Strings,它们是.equal而不是==
猜你喜欢
  • 2011-02-26
  • 1970-01-01
  • 2018-11-12
  • 1970-01-01
  • 2010-09-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多