Java-可变长参数

前言

可变长参数是在jdk1.5添加的语法糖性质的语法,可以让我们不再去显式地编写数组的语法,而编译器可以自动的帮我们去填充数组。

而实际上我们在test函数里拿到的args其实也是String类型的一个数组,创建数组这个过程编译器来帮我们做了处理。

需要注意的点

1.调用的方法能同时匹配可变长参数的函数与固定参数的函数时,优先调用固定参数的函数(包括无参的情况)

2.调用方法时,两个变长参数函数都匹配时无法通过编译

3.一个方法只能有一个变长参数,且只能是参数列表的最后一个

 

我认为的最佳实践

变长参数重载可能造成的问题可能是很多的,程序员一不注意可能就会踩入变长参数的坑,作为一个仅仅是语法糖的语法,我们在使用他的时候还是要避免进行重载,若一个需要数组参数的函数需要重载的话,还是不要使用变长参数了,直接使用数组可能是更好的选择。

打赏