public BasicPopulation(Individual ... individuals){
this.individuals = Arrays.asList(individuals);
}
是 创建 class BasicPopulation 类的一个对象/实体 的带参数的构造方法。要求传递的参数是Individual 类的一维数组。这个数组参数, 除写成
Individual ... individuals 之外,也可以写成
Individual [] individuals, 或
Individual individuals []。
java中参数" ..."的用法和意思 一文指出,
" Object ...os这种写法是从Java 5开始的,Java语言对方法参数支持一种新写法,叫可变长度参数列表"。
该文强调可变长度参数列表的格式:
参数类型和“...”三个点之间不必须有一个空格(Object ...os),Object...os也不会报错误;
可变长度参数列表这个参数必须是参数列表中的最后一个参数,不然会报错。
可见, java 用 类型名 加 符号 ... 或 [] 表示给方法传递的某种类型数组的参数,即 表示参数是某种类型的数组。
比如下列代码的功能是,逐一输出由命令行输入的字符串数组的元素。主方法(或成为 驱动方法)所要求的参数是字符串数组,是从命令行接收到的用户键入的字符串数组数据。数组数据的各个元素,用空格分开。这个参数 a, 代表接收到的字符串数组 a,它 既可以表示成 String [] a,或 String a [], 也可以表示成 String ... a, 但绝对不能写成 String a ...。这里,a 也常常写成 args 。args 是 英文 arguments 的简写,表示 (函数/方法)自变量的意思。
public class Test{
public static void main(String ... a ){
for(int i=0;i
System.out.println(a[i]);
}
}
输出: