可以使用Java的泛型来解决这个问题。假设我们要编写一个方法,传入一个参数列表,这个参数列表中的每个参数都是一个实现了List接口的集合类型。我们可以用泛型来定义这个方法,并用通配符来表示这个参数列表中每个元素的类型是未知的,需要再次进行参数化:
public static void processList(List extends List> paramList) {
for (List list : paramList) {
// 对每一个集合进行处理
}
}
在这个例子中,我们定义了一个泛型方法processList,它接收一个参数列表paramList,这个参数列表中的每个元素都是一个实现了List接口的集合类型。我们使用通配符?extends List
List list1 = Arrays.asList(1, 2, 3);
List list2 = Arrays.asList("foo", "bar", "baz");
List> paramList = new ArrayList<>();
paramList.add(list1);
paramList.add(list2);
processList(paramList);
在这个例子中,我们先定义了两个List类型的集合list1和list2,它们分别包含了Integer和String类型的元素。接着,我们创建了一个List类型的集合paramList,使用add方法将list1和list2添加进去。最后,调用processList方法传入这个参数列表paramList,它会对paramList中的每个集合类型元素进行处理。由于在定义processList方法时使用了泛型和通配符,这个方法可以接收任意实现了List接口的