西洲的雪

导航

java学习笔记——java方法02.命令行传参与可变参数

命令行传参与可变参数

一、命令行传参

有时候你希望运行一个程序时候再传递给它消息。这要靠传递命令行参数给main()函数实现。

命令行参数是在执行程序时候紧跟在程序名字后面的信息。

1. 下面的程序打印所有的命令行参数

public class Demo {
    public static void main(String args[]){
        for(int i=0; i<args.length; i++){
            System.out.println("args[" + i + "]: " + args[i]);
        }
    }
}

2. 进入cmd,编译、执行java文件

image

image

image

第一次执行没有给参数,没有输出;

第二次执行在程序名后面紧跟参数,正确输出。

疑问:什么时候需要用到?和Scanner交互有什么区别?

二、可变参数

不确定要传递多少个参数,在定义方法的时候可以使用可变参数

public class Demo {
    public static void main(String args[]){
        printmax(8,2,52,4,5);
        printmax(120,43,65);
    }
    //可变参数的声明格式:类型... 变量名
    public static void printmax(int... a) {
        if (a.length == 0){
            System.out.println("no number");
            return;
        }
        double result = 0.0;
        for (int i = 0; i < a.length; i++){
            if (a[i] > result){
                result = a[i];
            }
        }
        System.out.println("最大值是:" + result);
    }
}

image

注意:一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明。

posted on 2021-08-06 10:49  西洲的雪  阅读(58)  评论(0编辑  收藏  举报