瓦拉格

varargs:可变数量的参数

  • 某些方法可能需要可变数量的参数,具体取决于您的应用程序。

  • 一个示例是打开 Internet 连接并可以接收用户名、密码、文件名、协议等参数的方法。

  • 如果未传递某些信息,该方法可以使用这些参数的默认值。

  • 具有可变长度参数的方法允许仅传递必要的参数。

  • 在 JDK 5 之前,这些方法是通过重载或数组来处理的,这是一种有限且笨拙的方法。

  • 从 JDK 5 开始,引入了 varargs 功能,这使得创建具有可变数量参数的方法变得更加容易。

  • Varargs 是“可变长度参数”的缩写。

  • 使用可变参数的方法称为可变参数方法或简称为可变参数方法。

  • 可变参数方法的参数列表是可变长度的,允许它接收可变数量的参数。

可变参数的基本方面

  • 可变长度参数列表由三个点 (...) 指定。

  • 要创建接收可变数量参数的方法,请在方法声明中使用这三个点。

  • vaTest() 方法就是一个示例,它演示了如何实现此功能。

瓦拉格

  • 请注意 v 被声明为:int ... v

  • 带有 ... 的语法告诉编译器可以使用零个或多个参数调用 vaTest()。

  • 参数 v 隐式声明为 int[] 类型的数组。

  • 在 vaTest() 方法中,使用通用数组语法访问 v。

  • 一个完整的程序可以演示vaTest()的使用。

瓦拉格

  • 在 vaTest() 中,参数 v 被视为数组,因为它实际上是一个数组。

  • ... 语法告诉编译器将使用可变数量的参数,这些参数将存储在数组 v 中。

  • 在 main() 方法中,使用不同数量的参数调用 vaTest(),包括没有参数。

  • 当没有参数时,数组 v 的大小为零。

  • 方法可以具有公共参数和可变长度参数,但可变参数必须是最后声明的。

  • 可接受的声明示例:int doIt(int a, int b, double c, int ... vals)。

  • 在这种情况下,第一个参数将传递给公共参数,其余的将传递给 vals。

  • 可以重写 vaTest() 方法,以除了可变参数之外还采用通用参数。

瓦拉格

  • varargs 参数必须是方法参数列表中的最后一个。

  • 不允许在 varargs 参数之后声明公共参数;这会产生错误。

  • 一个方法中只能声明一个可变参数

  • 尝试在同一方法中声明多个 varargs 参数,例如 int ... vals 后跟 double ... morevals,是无效的并会生成错误。

以上就是瓦拉格的详细内容,更多请关注www.sxiaw.com其它相关文章!