Java 在运行时创建的varargs参数列表 publicstaticvoid方法(Set…Set){

Java 在运行时创建的varargs参数列表 publicstaticvoid方法(Set…Set){,java,variadic-functions,Java,Variadic Functions,根据程序流程的不同,上述方法使用两个集合或三个集合或更多集合调用。(编译时未知) 有没有一种方法可以“即时”构造参数列表? 集合的类型为集合[] 以下是没有收获的: public static void method(Set<?>... sets){} Set varargs=new HashSet(); (方法将varargs识别为一个集合->无解决方案) Set[]varargs=newhashset[2]; 返回 Set<Integer>[] varargs

根据程序流程的不同,上述方法使用两个集合或三个集合或更多集合调用。(编译时未知)

有没有一种方法可以“即时”构造参数列表? 集合的类型为集合<?>[]

以下是没有收获的:

public static void method(Set<?>... sets){}
Set varargs=new HashSet();
(方法将varargs识别为一个集合->无解决方案)

Set[]varargs=newhashset[2];
返回

Set<Integer>[] varargs = new HashSet<Integer>[2];
“无法创建哈希集的泛型数组”

我想构造一个参数数组,数组大小和内容在运行时填充。

我认为集合数组的定义如下:

"Cannot create generic array of HashSet<Integer>" 
Set[]varargs=新集合[2];
varargs[0]=新的HashSet();
varargs[1]=新的HashSet();

我认为集合数组的定义如下:

"Cannot create generic array of HashSet<Integer>" 
Set[]varargs=新集合[2];
varargs[0]=新的HashSet();
varargs[1]=新的HashSet();
Set[]varargs=newhashset[2];
varargs[0]=新的HashSet();
Set[]varargs=newhashset[2];
varargs[0]=新的HashSet();

谢谢你,我不知道它这么明显!谢谢你,我不知道这很明显!
Set<Integer>[] varargs = new Set[2];
varargs[0] = new HashSet<Integer>();
varargs[1] = new HashSet<Integer>();
 Set<Integer>[] varargs = new HashSet[2];
 varargs[0] = new HashSet<Integer>() ;