java值传递和引用传递问题

首先,肯定的是java中是值传递,但是在偶然一次 coding 中发现了一个问题没反应过来,特此来记录一下。
代码如下:

    public static void main(String[] args){

        StringBuffer s1 = new StringBuffer("hello");

        StringBuffer s2 = new StringBuffer("hello");

        change(s1,s2);

        System.out.println("s1: " + s1);

        System.out.println("s2: " + s2);

    }

    public static void change(StringBuffer a, StringBuffer b){

        a.append("world");
        b = a;
        //System.out.println(b);

    }

执行结果为:
在这里插入图片描述
直接给出图解:
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章