黑马程序员技术交流社区
标题:
泛型的小问题
[打印本页]
作者:
LuckyQS
时间:
2014-2-13 10:51
标题:
泛型的小问题
本帖最后由 LuckyQS 于 2014-2-14 11:44 编辑
ArrayList aList = new ArrayList<Integer>();这样写编译器会通过审核。
为什么我使用?通配符后,这样写就不能通过了
public static void Generic1(ArrayList<?> aList1)
{
Iterator<?> it = al.iterator();
while(it.hasNext())
{
System.out.println(it.next().toString());
}
}
ArrayList aList1 = new ArrayList<Integer>();就是错误呢
作者:
老貓钓鱼
时间:
2014-2-13 11:16
本帖最后由 老貓钓鱼 于 2014-2-13 11:47 编辑
Iterator<?> it = al.iterator();
al变量没有定义过,按你的意思来看这里应该是传递过来的参数变量aList1
改成 Iterator<?> it = aList1.iterator(); 试试
作者:
kira
时间:
2014-2-13 11:32
LZ确定导包了没 而且你的函数也写错了
public static void Generic1(ArrayList<?> aList1)
{
Iterator<?> it = aList1.iterator();//调用的是aList al未知变量
while(it.hasNext())
{
System.out.println(it.next().toString());
}
}
复制代码
你的al根本就是未知变量 怎么能编译通过呢
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2