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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1黑马币
String s1 = "java";
                String s2 = "hello";
                method_1(s1,s2);
                System.out.println(s1+"...."+s2);
StringBuilder s11 = new StringBuilder("java");
                StringBuilder s22 = new StringBuilder("hello");
                method_2(s11,s22);
                System.out.println(s11+"-----"+s22);
public static void method_1(String s1,String s2){
                s1.replace('a','k');
                s1 = s2;
        }
        public static void method_2(StringBuilder s1,StringBuilder s2){
                s1.append(s2);
                s1 = s2;
        }

15 个回复

倒序浏览
这是哪有问题啊?
回复 使用道具 举报
好容易错的这个,,
回复 使用道具 举报
对String每一次操作都会创建新的String对象  利用缓冲区 方法就会返回当前的对象  所以第一个输出Java...hello  第二个是javahello-----hello
回复 使用道具 举报

就是两个输出语句的区别
回复 使用道具 举报
小雨皮 发表于 2016-6-24 15:38
好容易错的这个,,

是的~ 主要是细节 两个有区别
回复 使用道具 举报
lifeiwangyue 发表于 2016-6-24 21:27
对String每一次操作都会创建新的String对象  利用缓冲区 方法就会返回当前的对象  所以第一个输出Java...he ...

是的 很完整的解答,满分
回复 使用道具 举报
guowei 中级黑马 2016-6-30 16:46:41
8#
学习了111111111111
回复 使用道具 举报
yehan627 来自手机 中级黑马 2016-7-1 18:10:16
9#
好东西啊
回复 使用道具 举报
两次都打印 hello.......hello   
回复 使用道具 举报
刚犯过这种错误,受教了!
回复 使用道具 举报
都是初学者加油
回复 使用道具 举报
竟然不懂
回复 使用道具 举报
嗯嗯。。。。。。。。。。。。。。
回复 使用道具 举报
好吧 学到啦
回复 使用道具 举报
看不出来,求大神指导
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马