您的位置:首页 > 编程语言 > Java开发

java中的参数传递问题

2017-11-06 19:13 351 查看
java中的参数传递问题:

    基本类型:形式参数的改变对实际参数没有影响(参数传递,传递的是参数数值)

    引用类型:形式参数的改变直接影响实际参数(传递的是地址)



package cn.base;

public class ZhiChuanDi {
    public static void main(String[] args) {
        int a=10,b=20;
        System.out.println("初始实参:");
        System.out.println("a="+a+" "+"b="+b);
        System.out.println("-----------------------");
        change(a, b);
        System.out.println("chang方法调用完毕,实参:");
        System.out.println("a="+a+" "+"b="+b);
        System.out.println("-----------------------");
        int[] arr={1,2,3,5,6};
        change(arr);
        System.out.println("数组进行值传递后,实参改变:");
        System.out.println("原来arr[1]=2"+" 现在arr[1]="+arr[1]);
    }
    
    public static void change(int a,int b){
        System.out.println("实参的值传递给形参,形参:");
        System.out.println("a="+a+" "+"b="+b);
        System.out.println("-----------------------");
        a=b;
        b=a+b;
        System.out.println("形参做处理后,形参");
        System.out.println("a="+a+" "+"b="+b);
        System.out.println("-----------------------");
    }
    
    public static void change(int[] arr){
        for(int i=0;i<arr.length;i++){
            if(arr[i]%2==0)
                arr[i]*=2;
        }
    }
    
}


运行结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: