方法的重载
重载就是在一个类中,有相同的函数名称,但形参不同的函数
方法的重载规则:
- 方法名称必须相同
- 参数列表必须不同(个数不同or类型不同、参数排列顺序不同等)
- 方法的返回类型可相同也可不同
- 仅仅返回类型不同不足以成为方法的重载
实现理论:方法名称相同时,编译器会根据调用方法的参数个数、参数类型等逐个匹配,以选择对应的方法,若匹配失败,则编译报错
命令行传参
有时需要运行一个程序时再传递给它消息,这需要靠传递命令行参数给main()函数实现
package com.dsh.method;
public class Demo03 {
public static void main(String[] args) {
//args.length 表示数组长度
for (int i=0;i<args.length;i++){
System.out.println("args["+i+"]:"+args[i]);
}
}
}
可变参数
在方法声明中,在指定参数类型后加一个省略号(…)
一个方法中只能指定一个可变参数,它必须是方法的最后一个参数,任何普通的参数必须在它之前声明。
package com.dsh.method;
public class Demo04 {
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");
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);
}
}