Java允许将同一个类中多个 同名同功能但参数个数不同的方法封装成一个方法。
可以通过可变参数实现
语法: 访问修饰符 返回类型 方法名(数据类型... 形参名) { }
public class Main{ public static void main(String[]args){ Method method = new Method(); method.sum(1,2,3); } } class Method { public int sum(int... numbers) { //int... 表示可以接收0~n个参数 //使用可变参数时可以当作数组使用 System.out.println("接收参数个数:" + numbers.length); return 0; } }
可变参数的实参可以是数组
public class Main{ public static void main(String[]args){ int[] arr = {1, 2, 3, 4}; Method method = new Method(); method.sum(arr); } } class Method { public int sum(int... numbers) { //int... 表示可以接收0~n个参数 //使用可变参数时可以当作数组使用 System.out.println("接收参数个数:" + numbers.length); return 0; } }
注意:可变参数可以和陪她类型的参数一起放在形参列表,但必须保证可变参数在最后
可变参数只能有一个
public int sum(int f2, int... numbers) { //正确 } public int sum( int... numbers, int f2) { //错误 } public int sum( int... numbers, int... f2) { //错误 }