JAVA之可变参数和集合数组的互转

可变参数

在定义方法的时候不确定该定义多少个参数时,可以使用可变参数来定义,这样方法的参数个数会根据调用者来确定。

注意:如果一个方法有可变参数,并且有多个参数,那么,可变参数肯定是最后一个。

格式:

例:

JAVA之可变参数和集合数组的互转_第1张图片

数组和集合相互转化

集合转数组:

JAVA之可变参数和集合数组的互转_第2张图片

数组转集合,注意转换后的集合不能调用其add方法向里面添加数据,否则会报出UnsupportedOperationException

JAVA之可变参数和集合数组的互转_第3张图片

通过Arrays.asList((T… a))的源码可以看到,这里面返回的ArrayList是在Arrays类里面定义的一个内部类,并非java.util包下的ArrayList。

基本数据类型的数组转换成集合,会将整个数组当作一个对象转换,下面程序将会打印出list的对象地址

通过Arrays.asList((T… a))的源码可以看到,这里面返回的ArrayList是在Arrays类里面定义的一个内部类,并非java.util包下的ArrayList。

基本数据类型的数组转换成集合,会将整个数组当作一个对象转换,下面程序将会打印出list的对象地址

将数组转换成集合,数组中的数据必须是引用数据类型

静态导入

在导入相关包时,如果是这个类中的方法是static修饰的,可以直接导入的方式将这个方法进来。开发中使用的不多。

JAVA之可变参数和集合数组的互转_第4张图片

你可能感兴趣的:(JAVA之可变参数和集合数组的互转)