命令行传参与可变参数

可以用命令行给main方法传参

JDK 1.5之后,java支持传递同类型的可变参数给的一个方法

在方法声明中,在指定参数类型后面加一个省略号

一个方法中只能指定一个可变参数,且必须在最后一个,任何不可变参数必须在可变参数之前声明

也可以叫不定项参数

package com.xuyifan.function;

/**
 * @author xyf
 * @create 2020-08-13-14:50
 */
public class Demo04 {
    public static void main(String[] args) {
        //可能会存在很多不确定的情况下声明参数
        //在声明方法的时候,参数需要多少并不确定
        Demo04 demo04 = new Demo04();
        demo04.test(1,2,3,4,5,67,8);


    }
    public  void test(int... k){
        for (int i = 0; i < k.length; i++) {
            System.out.println(k[i]);
        }
    }
}

输出遍历,实际上这就是个数组

package com.xuyifan.function;

/**
 * @author xyf
 * @create 2020-08-13-14:57
 */
public class Demo05 {
    public static void main(String[] args) {
        printMax(1,2,3,5.5,21.2,29.2,1,2);
        printMax(new double[]{1,2,3,4,5});//只要是double类型的都可以,特别是可变参数本质上就是个数组


    }
    public static void printMax(double... a){
        if (a.length==0){
            System.out.println("no argument accessed");
            return;
        }
        double result=a[0];
        for (int i = 1; i <a.length ; i++) {
            if (a[i]>result){
                result=a[i];
            }

        }
        System.out.println(result);
    }
}

输出:

 

posted @ 2020-08-13 15:06  jueqishizhe  阅读(94)  评论(0)    收藏  举报