String 对象的问题

pingxumeng 2007-09-11 07:46:05
String s=new String("1"+"2");
这条语句创建了几个对象?

...全文
189 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zephyr_cc 2007-09-11
  • 打赏
  • 举报
回复
看那个地址
ykzhen()的那个长的回复
javafreshfish 2007-09-11
  • 打赏
  • 举报
回复
完全看不懂
pingxumeng 2007-09-11
  • 打赏
  • 举报
回复
创建一个对象 一个引用对象?
引用对象是什么意思?
前面的对象指的是常量池中的对象?
第二个是堆中的对象?
zephyr_cc 2007-09-11
  • 打赏
  • 举报
回复
更正一下"StringBuilder"
zephyr_cc 2007-09-11
  • 打赏
  • 举报
回复
先看看这里
http://community.csdn.net/Expert/topic/5731/5731826.xml?temp=.5181238

String s=new String("1"+"2");
这句话创建了两个对象.
一个是new出来的s引用的那个对象
另一个是"12"

为什么是"12",而不是"1","2","12".
因为编译器在编译阶段直接把"1" + "2"优化成"12"
而不会等到虚拟机去傻乎乎的创建StringBuild,然后用append连接字符串,再调用toString

至于为什么是两个对象,看前面那个链接.
pingxumeng 2007-09-11
  • 打赏
  • 举报
回复
大家能具体解释下吗,谢谢
springking11 2007-09-11
  • 打赏
  • 举报
回复
String s=new String("1"+"2");

创建了2个对象和1个引用。
吴红军 2007-09-11
  • 打赏
  • 举报
回复
一个,String每改变一次就会实例化一个对象!

62,612

社区成员

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

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