可变参数允许方法接收不定数量的参数,通过类型后加...定义,如int... numbers,本质是数组,可传0个或多个值或数组,调用灵活,但必须位于参数列表末尾且最多一个,常用于求和、日志等场景。
在Java中,可变参数(varargs)允许你向方法传递不定数量的参数,使方法调用更灵活。使用可变参数可以避免重载多个版本的方法来处理不同数量的参数。
在方法的形参列表中,通过在参数类型后添加三个点 ... 来定义可变参数。例如:
public void printNumbers(int... numbers) {这里的 int... numbers 表示该方法可以接收0个或多个 int 类型的参数。在方法内部,numbers 被当作一个数组处理。
你可以用多种方式调用上面的方法:
这三种调用方式都是合法的,因为可变参数本质上是数组。
使用可变参数时需要注意以下几点:
例如
:
这个方法接受一个标签和任意数量的消息字符串。
可变参数常用于以下场景:
例如实现一个求和方法:
public int sum(int... values) {基本上就这些。掌握可变参数能让你写出更简洁、易用的API。注意别滥用,如果参数数量固定,还是建议使用明确的参数列表。