本帖最后由 黄奕豪 于 2012-5-27 15:10 编辑
泛型方法是这样:public<T> void printColl<Iterator<T> it>
通配符泛型是这样:public void printColl(Iterator<?> it)
这两个方法在应用上都可以实现,他们有什么区别么?难道就一个简化书写?
好吧,我确实差,我不活了~~~重复了一遍视频,毕老师说了,泛型方法就多了一个能接收并操作这个类型。- import java.util.*;
- class GenericTest
- {
- public static void main(String[] args)
- {
- ArrayList<String> al = new ArrayList<String>();
- al.add("abc1");
- al.add("abc2");
- al.add("abc3");
- ArrayList<Integer> al1 = new ArrayList<Integer>();
- al1.add(4);
- al1.add(7);
- al1.add(1);
- printColl(al);
- printColl(al1);
- }
- public static <T> void printColl(Collection<T> al)
- {
- Iterator<T> it = al.iterator();
- while(it.hasNext())
- {
- System.out.println(it.next());
- }
- }
- /*//通配符的方法
- public static void printColl(Collection<?> al)
- {
- Iterator<?> it = al.iterator();
- while(it.hasNext())
- {
- System.out.println(it.next());
- }
- }*/
- }
复制代码 |
|