栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

字符串是Java中的对象,那么为什么不使用'new'创建它们呢?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

字符串是Java中的对象,那么为什么不使用'new'创建它们呢?

除了已经说过的内容外,Java中的字符串文字(即像Java 一样

"abcd"
但不喜欢的字符串)
new String("abcd")
是经过内插的-这意味着,每次引用
“ abcd”
时,你都将引用一个String实例,而不是一个新实例。每一次。因此,你将拥有:

String a = "abcd";String b = "abcd";a == b; //True

但是如果你有

String a = new String("abcd");String b = new String("abcd");

那么就有可能

a == b; // False

(如果有人需要提醒,请务必使用

.equals()
比较字符串;
==
测试物理相等性)。

Interning String文字很好,因为它们经常被使用多次。例如,考虑(人为)代码:

for (int i = 0; i < 10; i++) {  System.out.println("Next iteration");}

如果没有String的内部,则“下一次迭代”将需要实例化10次,而现在只需要实例化一次。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/404830.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号