A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 374856298 中级黑马   /  2015-5-5 23:01  /  351 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*
        Java中参数传递问题:
                基本类型:形式参数的改变对实际参数没有影响。
                引用类型:形式参数的改变直接影响实际参数。

        Java中只有值传递,引用类型传递的是地址值。
*/class ArgsDemo
{
                public static void main(String[] args)
                {
                        int a = 10;
                        int b = 20;
                        System.out.println("a:"+a+",b:"+b);//a:10,b:20
                        change(a,b);
                        System.out.println("a:"+a+",b:"+b);//a:20,b:40        --        问题        a:10,b:20

                        int[] arr = {1,2,3,4,5};
                        change(arr);
                        //{1,4,3,8,5}
                        System.out.println(arr[1]);//4
                }

                public static void change(int a,int b)
                {
                        System.out.println("a:"+a+",b:"+b);//a:10,b:20
                        a = b; //a=20
                        b = a + b; //b=40
                        System.out.println("a:"+a+",b:"+b);//a:20,b:40
                        //return;
                }

                public static void change(int[] arr) //{1,2,3,4,5}        --        {1,4,3,8,5}
                {
                        for(int x=0; x<arr.length; x++)
                        {
                                //如何元素的值是偶数,那么,就把值变为以前的2倍。
                                if(arr[x]%2==0)
                                {
                                        arr[x]*=2;
                                }
                        }
                }
}


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马