Java可变参数列表详解

Java可变参数列表详解

1、接受的传入参数情况:

如public void test(String ...args){...}

1)不使用参数,如test()

2)使用一个或多个参数,如test("1"); test("1","2");

3)使用数组 test(new String[]{"1","2"});

2、方法内部访问参数:

在test方法内部,我们可以像使用数组的访问方式一样来访问参数args.如:args[i]

3、编译器原理

编译器编译test(String ...args){...} 编译成为数组调用的方式test(String[] args){}

4、注意事项

如果同时同一个类中还有一个test方法,例如test(String args) ,我们采用 test("1")的方式调用,我们就可以知道了,因为有这个方法存在,所以编译器就会优先使用这个 test(String args)    方法,而不会使用不定参数的方法,这个原因很明确,因为不定参数本质上是一个数组为参数的方式。

所以,如果你定义了一个不定参数的test方法,如果你再定义一个test(String[] args)的以数组为参数的方法,编译器就会提示你方法定义重复。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!