【问题标题】:What is the difference between String str1 = "hello"; and String str2 = new String ("hello"); in java? [duplicate]String str1 = "hello"; 有什么区别?和 String str2 = new String ("hello");在java中? [复制]
【发布时间】:2013-12-03 15:33:00
【问题描述】:

String str1 = "hello";String str2 = new String ("hello");在java中有什么区别?

我知道str2 是一个对象,但是str1 呢?

我的意思是例如:

如果它们都是对象,但是为什么

if(str1.toString() == str2.toString())

不会产生真正的布尔值?

【问题讨论】:

  • 它们都是对象,查看所有相关问题和答案
  • 两者都是对象。前者使用文字字符串,后者从文字字符串创建一个新字符串。

标签: java string


【解决方案1】:

对象在任何情况下都是一个字符串,顺便说一句

if(str1.toString().equals(str2.toString()))

更好

if(str1.equals(str2))

是比较字符串的正确方法

【讨论】:

  • @ZouZou 生成新哈希
猜你喜欢
  • 2017-10-27
  • 1970-01-01
  • 2013-11-25
  • 2015-12-07
  • 2014-07-22
  • 2017-05-08
  • 2012-12-29
  • 1970-01-01
相关资源
最近更新 更多