JAVA网络爬虫
HttpClient

导航

 

可变参数

  • 执行路口

    package cn.xiaoge.day14.demo05;
    
    /*
        可变参数: 是JDK1.5之后出现的新特性
    
        使用前提:
            当方法的参数列表数据类型已经确定, 但是参数的个数不确定, 就可以使用可变参数.
    
        使用格式: 定义方法是使用
            修饰符 返回值类型 方法名(数据类型...变量名) {}
    
        可变参数的原理:
            可变参数底层是一个数组, 根据传递参数个数不同, 会创建不同长度的数组, 来存储这些参数
            传递的参数个数, 可以是0个(不传递), 1, 2...多个
     */
    
    public class Demo01VarArgs {
    
        public static void main(String[] args) {
            int sum = sum(1, 2, 3, 4, 5, 6, 7, 8, 9);
            System.out.println(sum);
            System.out.println("===========================");
            method1(10, 20 , 30, 40 ,50, 60);
            System.out.println("===========================");
            method2(10, 20 , 30, 40 ,50, 60);
        }
    
    
        /*
            可变参数的注意事项:
                1. 一个方法的参数列表, 只能有一个可变参数
                2. 如果方法的参数有多个, 那么可变参数必须写在参数列表的末尾
         */
        public static void method1(int a, int b, int ... arr) {
            int sum = 0;
    
            for (int i: arr) {
                sum+=i;
            }
            System.out.println(sum + a + b);
    
        }
    
    
        // 可变参数的特殊(终极)写法
        public static void method2(Object ... obj) {
            int sum = 0;
            for (Object i: obj) {
                sum += (Integer) i;
            }
            System.out.println(sum);
        }
    
    
        // public static void method2(int ... arr, String ... strArr) {
                // 错误写法 一个参数列表只能有一个可变参数
        // }
    
    
        /*
            定义计算(0-n)整数和的方法
            已知: 计算整数的和, 数据类型已经确定int
            但是参数的个数不确定, 不知道计算几个整数的和, 就可以使用可变参数
    
            sum(); 就会创建一个长度为0的数组, new int[0]
            sum(1, 2, 3, 4, 5, 6, 7, 8, 9); 就会创建一个长度为9的数组, new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9}
         */
        public static int sum(int ... arr) { // arr底层是一个数组
            int sum = 0;
            for (int i = 0; i < arr.length; i++) {
                sum += arr[i];
            }
            return sum;
        }
    
    
        /*
            定义一个方法, 计算两个int类型整数的和
         */
    //    public static int sum(int a, int b, int c) {
    //        return a + b + c;
    //    }
    
    
        /*
            定义一个方法, 计算两个int类型整数的和
         */
    //    public static int sum(int a, int b) {
    //        return a + b;
    //    }
    
    }
    
    // 运行结果
    45
    ===========================
    210
    ===========================
    210
    
posted on 2019-10-29 13:36  gmlgxx  阅读(46)  评论(0)    收藏  举报