搜索
写经验 领红包
 > 社会

命令行参数的使用(命令行参数是什么函数的参数)

导语:命令行传递参数、可变参数

命令行参数的使用(命令行参数是什么函数的参数)

命令行传参

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

public static void main(String args[]) {        //args.length 数组长度        for (int i = 0; i < args.length; i++) {            System.out.println(&34; + i + &34; +args[i]);        }    }

可变参数

JDK1.5开始,Java支持传递同类型的可变参数给一个方法。

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

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

public static void main(String args[]) {        //调用可变参数的方法        printMax(34,3,2,5,56.2);        printMax(new double[]{11.1,22.2,33.3});    }    public static void printMax(double... numbers) {        if (numbers.length == 0) {            System.out.println(&34;);            return;        }​        double result = numbers[0];​        //排序        for (int i = 1; i < numbers.length; i++) {            if (numbers[i] > result) {                result = numbers[i];            }        }        System.out.println(&34; + result);    }​//输出结果The max value is 56.2The max value is 33.3​Process finished with exit code 0

每日Java面试题

一、List、Set、Map是否继承自Collection接口?

List、Set是,Map不是。Map是键值对映射容器,与List和Set有明显的区别,而Set存储的零散的元素且不允许有重复元素(数学中的集合也是如此),List是线性结构的容器,适用于按数值索引访问元素的情形。

二、Collections.sort排序内部原理

在Java 6中Arrays.sort()和Collections.sort()使用的是MergeSort,而在Java 7中,内部实现换成了TimSort,其对对象间比较的实现要求更加严格。

三、List、Set、Map之间的区别是什么?

List、Set、Map的区别主要体现在两个方面:元素是否有序、是否允许元素重复。

三者之间的区别,如下表:

本文内容由小春整理编辑!