黑马程序员技术交流社区

标题: 形参如何改变实参?关于StringBuffer [打印本页]

作者: 再见_悟空    时间: 2015-9-2 20:29
标题: 形参如何改变实参?关于StringBuffer
public class StringDemo {
        public static void main(String[] args) {
                        StringBuffer sb = new StringBuffer();
                        System.out.println(sb);
                        changebuf(sb);
                        System.out.println(sb);
        }
                        public static void changebuf(StringBuffer sbuf){
                                sbuf.append("world");
        }
}
这里结果为什么是world?


作者: forjunjian    时间: 2015-9-2 22:20
这里传入方法 changebuf(StringBuffer sbuf)的sbuf是形式参数,但它指向sb引用变量指向的对象的实际内存地址,也就是说sbuf指向的是sb引用变量指向的对象实体。所以做的修改是sb对象做的修改,所以内容肯定改变的。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2