A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wodenhaowzg 中级黑马   /  2014-1-16 17:19  /  1106 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 wodenhaowzg 于 2014-1-17 12:50 编辑

字符串String s1 = “abc”;
那么对这个字符串进行substring和replace操作,字符串缓冲区是不是多两个新的字符串
是不是相当于
String s2 = new String(s1.substring(1));
String s3 = new String(s1.replace("bc", "xyz"));
如果字符串缓冲区已经存在s2 和 s3这俩字符串,是不是只是将旧的指引转移到他们俩身上了 而没有创建新的?

评分

参与人数 1技术分 +1 收起 理由
滔哥 + 1

查看全部评分

1 个回复

正序浏览
对于String当你new的时候就创建了新的索引,而 String s2 = new String(s1.substring(1));是把指向改变了,指向了旧的地址,但是新建的指向的地址还是在的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马