方法的参数值传递机制

/*
形参:方法声明时,方法小括号内的参数
实参: 调用方法时,实际传入的参数的值

规则:java中的参数机制:值传递机制
          形参是基本数据类型的:将实参的值传递给形参的基本数据类型的变量
          形参是引用数据类型的:将实参的引用类型变量的值(对应的堆空间的对象实体的首地址值)传递给形参的引用类型变量
 */
public class TestArgsTransfer {
    public static void main(String[] args) {
        TestArgsTransfer tt = new TestArgsTransfer();
        int i = 10;
        int j = 5;
        System.out.println("i:" + i + "j:" + j);

        tt.swap(i, j);// i1 0 j5 swap里面的i5 j10所以没变
        System.out.println("i:" + i + "j:" + j);// i10 j5

    }

    // 交换两个变量的方法
    public void swap(int i, int j) {
        int temp = i;
        i = j;
        j = temp;
    }
}

输出结果:

i:10j:5
i:10j:5

 

 

 

public class TestArgsTransfer1 {
    public static void main(String[] args) {
        TestArgsTransfer1 tt = new TestArgsTransfer1();
        DataSwap ds = new DataSwap();
        System.out.println("ds.i" + ds.i + "ds.j" + ds.j);
        tt.swap(ds);
        System.out.println("ds.i" + ds.i + "ds.j" + ds.j);
    }

    // 交换元素的值
    public void swap(DataSwap d) {// 交换两个变量的值
        int temp = d.i;
        d.i = d.j;
        d.j = temp;
    }
}

class DataSwap {
    int i = 10;
    int j = 5;
}


输出结果:

ds.i10ds.j5
ds.i5ds.j10

 

 

posted @ 2020-03-13 00:27  林淼零  阅读(149)  评论(0)    收藏  举报