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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© China_Riven 中级黑马   /  2015-7-17 12:22  /  158 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*
* 可变参数:即参数可变。
*
* 格式:
*                 方法名(参数类型… 参数名)
*
* 可变参数的本质是一个数组,会将传入的多个参数转成一个数组,而参数名就是数组引用
*
* 注意事项:
*                 1:可变参数与数组类型不能重载,因为二者本质上是一样的。数组可以传入可变参数的方法.但是几个数不能传入数组的方法.
*                 2:可变参数必须放在最后
*/
public class Demo2 {

        public static void main(String[] args) {

                System.out.println(getSum(10, 20));
                System.out.println(getSum(10, 20,30));
               
                int[] arr = new int[]{1,23,4,65,76,1};
                System.out.println(getSum(arr));
               
//                System.out.println(getSum(1,3,4,6,7,86,64,45,3));
               
                System.out.println(myGetSum("这些数的和:", 1,3,4,6,7,86,64,45,3));
        }

        //求两个数的和
        public static int getSum(int a,int b) {
                return a+b;
        }
       
        //求三个数的和
        public static int getSum(int a,int b,int c) {
                return a+b+c;
        }
       
        //求任意个数的数组内所有数的和
//        public static int getSum(int[] arr) {
//               
//                int sum = 0;
//                for (int i = 0; i < arr.length; i++) {
//                        sum += arr[i];
//                }
//                return sum;
//        }
       
        //求任意个数的和
        //可变参数的定义后边会有一个形参变量.可变参数的方法在调用时,会一次传入多个该类型的对象.这些对象传进来后,会组织成一个数组,而形参变量就是这个数组的引用.
        public static int getSum(int... a){
                System.out.println("调用了多个参数的可变参数方法");
                int sum = 0;
                for (int i = 0; i < a.length; i++) {
                        sum += a[i];
                }
                return sum;
        }
       
        public static String myGetSum(String s,int... a){
               
                int sum = 0;
                for (int i = 0; i < a.length; i++) {
                        sum += a[i];
                }
               
                return s+sum;
        }
}

0 个回复

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