这是因为ArrayList不知道自己会包含哪种类型的类,所以标记称之为“未经检查”(unchecked)。要解决这个问题,我们需要进入ArrayList声明,清楚说明ArrayList包含什么类:
ArrayList list=new ArrayList();
包含的类型在<和>之间,在此例中为Integer类。现在这是一个清楚知道它包含Integer类的ArrayList,并会按此执行。因此如果你尝试执行list.add(new Boolean(true))时,将会发生一个编译时间错误:
发布: 2008-4-29 09:50 | 作者: 不详 | 来源: builder.com.cn | 查看: 26次 | 进入软件测试论坛讨论