java中基本类型的参数传递和引用类型的参数传递

来源:互联网 发布:linux 局域网传文件 编辑:程序博客网 时间:2024/06/05 08:32

java中基本类型的参数传递和引用类型的参数传递

基本类型的参数传递

基本类型的参数传递,方法不改变参数值

public class BasicTypeTransfer {    public static void swap(int a, int b){        int tmp = a;        a = b;        b = tmp;        System.out.println("in swap: a = "+a+", b = "+b);    }    public static void main(String[] args) {        int a = 3;        int b = 6;        System.out.println("before swap: a = "+a+", b = "+b);        swap(a,b);        System.out.println("after swap: a = "+a+", b = "+b);    }}/* * before swap: a = 3, b = 6in swap: a = 6, b = 3after swap: a = 3, b = 6*/

引用类型的参数传递

引用类型的参数传递,方法改变参数值

public class ReferenceTransfer {    public static class DataWrap {        int a;        int b;    }    public static void swap(DataWrap dw) {        int tmp = dw.a;        dw.a = dw.b;        dw.b = tmp;        System.out.println("in swap: a = "+dw.a+", b = "+dw.b);    }    public static void main(String[] args) {        DataWrap dw = new DataWrap();        dw.a = 3;        dw.b = 6;        System.out.println("before swap: a = "+dw.a+", b = "+dw.b);        swap(dw);        System.out.println("after swap: a = "+dw.a+", b = "+dw.b);    }}/* * before swap: a = 3, b = 6in swap: a = 6, b = 3after swap: a = 6, b = 3*/
0 0
原创粉丝点击