为了账号安全,请及时绑定邮箱和手机立即绑定

堆内存中的内容是是创建的。 我们怎么决定用new创建新字符串 还是创建字符串的引用​。 根据什么区分使用哪种。

堆内存中的内容是是创建的。 我们怎么决定用new创建新字符串 还是创建字符串的引用。 根据什么区分使用哪种。

正在回答

3 回答

其实呢,在第一次使用字符串引用的使用,也是通过new来创建字符串的,只是隐式的new一个字符串对象,在你第二次使用同一个字符串的时候,会查找堆内存中有没有和该字符串一样的,如果有就直接引用这个堆中已经有的字符串对象,如果没有,还是会new一个;而直接使用new的方法,创建字符串,是不管堆中有没有,直接创建一个新的对象,所以在比较的时候,都是false;

3 回复 有任何疑惑可以回复我~
#1

qq_Takeiteasy_2

查找的是常量池吧。。
2018-12-24 回复 有任何疑惑可以回复我~
#2

qq_Takeiteasy_2

隐式的new,然后把字符串放在常量池里么
2018-12-24 回复 有任何疑惑可以回复我~

??? 老哥 我觉得你好像没搞明白这张啥意思

0 回复 有任何疑惑可以回复我~

new是创建对象的引用

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

堆内存中的内容是是创建的。 我们怎么决定用new创建新字符串 还是创建字符串的引用​。 根据什么区分使用哪种。

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信