欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java--方法参数的值传递机制

程序员文章站 2023-12-26 10:38:27
...
java的值传递机制

java中方法的参数传递的方式只有一种:值传递,即将实际参数值的副本传入方法中,而参数本身不受影响
形参是基本数据类型,将实参基本数据类型变量的“数据值”传递给形参
形参是引用数据类型,将实参引用数据类型变量的“地址值”传递给形参

交换两个数的值
/*
java的值传递机制,交换两个数的值
 */
public class ValueTransferTest {

    public static void main(String[] args) {

        int m=10;
        int n=20;
        ValueTransferTest transferTest=new ValueTransferTest();
        transferTest.swap(m,n);
        System.out.println("m = "+m+", n= "+n);


    }

    public void swap(int m,int n){

        int temp=m;
        m=n;
        n=temp;
    }
}

这里使用基本数据类型,传递的是m和n的值的copy,而不是m和n本身,所以当方法执行完之后,方法的形参被销毁,而main方法里的m和n还是不变

交换两个数的值–传入引用
/**
 * 交换两个数的值,引用传递
 */
public class ValueTransferTest2 {

    public static void main(String[] args) {
        int[] data=new int[]{10,20};

        ValueTransferTest2 valueTransferTest2=new ValueTransferTest2();
        valueTransferTest2.swap(data);
        System.out.println("m = "+data[0]+",n = "+data[1]);

    }

    public void swap(int[] data){
        int temp=data[0];
        data[0]=data[1];
        data[1]=temp;
    }
}

引用类型,传入的是对象的地址,那么形参和实参同时指向同一个对象。

相关标签: java

上一篇:

下一篇: