【发布时间】:2014-01-06 19:14:57
【问题描述】:
我正在尝试编写一个通用的打印方法,适用于所有实现“Iterable”接口的类
public class List<T> {
public static <T extends Iterable<T>> void print(T[] list){
for (Object element : list){
System.out.println(element);
}
}
public static void main(String[] args){
ArrayList<Integer> l = new ArrayList();
l.add(1);
l.add(5);
l.add(3);
l.add(2);
print(l);
}
}
但我收到错误“List 类型中的方法 print(T[]) 不适用于参数 (ArrayList)”
【问题讨论】:
-
您可能不想将您的班级命名为
List。此外,class List<T>中的T与public static <T extends Iterable<T>> void print(T[] list)中的T不同。