今天学到了可变参数的相关知识,突然想起来之前有一次面试,面试官问的问题就是参数的个数不确定时怎么办?当时没有回答出来,现在在这里记录一下。
可变参数: 是JDK1.5之后出现的新特性
使用前提:
当方法的参数列表数据类型已经确定但是参数的个数不确定 ,就可以使用可变参数。
使用格式: 定义方法时使用
修饰符 返回值类型 方法名(数据类型...变量名){ }
可变参数的原理:
可变参数底层就是一个数组,根据传递参数个数不同,会创建不同长度的数组,来存储这些参数
传递的参数个数,可以是0个(不传递),1,2...多个
可变参数的注意事项:
1.一个方法的参数列表,只能有一个可变参数。
2.如果方法的参数有多个,那么可变参数必须写在参数列表的末尾。
代码演示:
//可变参数demo展示 public class Kebiancanshu { public static void main(String[] args) { test(2,5.5,"Icey","Shane"); // test(2,5.5); } //定义一个方法,方法的参数列表中有可变参数 public static void test(int a, double b,String... args){ System.out.println(a); System.out.println(b); System.out.println(Arrays.toString(args)); } }
运行结果: