String s = "a" + "b" + "c" 到底创建了几个对象?

北极地之光 2013-10-27 05:23:06
有人说1个,http://blog.csdn.net/java2000_net/article/details/3681385
有人说5个,到底是几个。给个官方解释吧
...全文
238 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
北极地之光 2013-10-27
  • 打赏
  • 举报
回复
明白了。。。。。。
失落夏天 2013-10-27
  • 打赏
  • 举报
回复
引用 楼主 qd_hello 的回复:
有人说1个,http://blog.csdn.net/java2000_net/article/details/3681385, 有人说5个,到底是几个。给个官方解释吧
这问题在论坛上出现至少10次了。。。 至于几个,你去看看咱们版主大人的博客吧。。 http://blog.csdn.net/java2000_net/article/details/3681385
lcf 2013-10-27
  • 打赏
  • 举报
回复
引用 1 楼 huxiweng 的回复:
不是说的很清楚了吗?1个,"a" "b" "c"是String pool里定义好的,直接使用。对象只有一个s。其实讨论这个一点意义都没有,现在的jvm都会给你优化的,这种对程序的性能影响会越来越小
编译的时候会变成"abc",于是只有一个对象
编程点滴 2013-10-27
  • 打赏
  • 举报
回复
就是1个啊,是编译器把你的代码进行了优化,所以是一个
teemai 2013-10-27
  • 打赏
  • 举报
回复
不是说的很清楚了吗?1个,"a" "b" "c"是String pool里定义好的,直接使用。对象只有一个s。其实讨论这个一点意义都没有,现在的jvm都会给你优化的,这种对程序的性能影响会越来越小

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧