泛型之间有什么区别?Java中的(通配符)和类型参数
有人能解释一下这两种方法的区别吗?它们是一样的吗?在我看来,它们解决的问题是一样的。如果它们是相同的,为什么需要?
方法#1,无限
public static void printList(List<?> list) {
for (Object elem : list)
System.out.println(elem + " ");
System.out.println();
}
方法#2,无界:
public static <T> void printList(List<T> list) {
for (Object elem : list)
System.out.println(elem + " ");
System.out.println();
}
方法#1,有界
public static void printList(List<? extends Number> list) {
for (Object elem : list)
System.out.println(elem + " ");
System.out.println();
}
方法#2,有界:
public static <T extends Number> void printList(List<T> list) {
for (Object elem : list)
System.out.println(elem + " ");
System.out.println();
}
共 (0) 个答案