命令行传参和可变参数
命令行传参
有时候你希望运行一个程序的时候在传递给它信息,这要靠传递命令行参数给main()函数实现。
![截屏2022-05-13 上午3.08.47](\\Mac\Home\Desktop\截屏2022-05-13 上午3.08.47.png) public static void main(String[] args) {
//args.length 数组的长度
for (int i = 0; i < args.length; i++) {
System.out.println("args[" + i + "]:" + args + args[i]);
}
}
可变参数
-
JDK1.5开始,Java支持传递同类型的可变参数给一个方法。
-
在方法声明中,在指定参数类型后加一个省略号(…)。
-
一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明。
//代码举例
public static void main(String[] args) {
Demo05 demo05 =new Demo05();
demo05.test(1,2,3);
}
public void test(int...i){
System.out.println(i[0]);
System.out.println(i[1]);
System.out.println(i[2]);
}
//运行结果为:
1
2
3
//代码举例
public static void main(String[] args) {
//调用可变参数的方法
printMax(34, 3, 3, 2, 56.5);
printMax(new double[]{1, 2, 3});
}
public static void printMax(double... numbers) {
if (numbers.length == 0) {
System.out.println("No argument passed");
return;
}
double result = numbers[0];
// 排序
for (int i = 1; i < numbers.length; i++) {
if (numbers[i] > result) {
result = numbers[i];
}
}
System.out.println("The max value is " + result);
}
}