【发布时间】:2014-06-05 15:19:28
【问题描述】:
鉴于此代码
import java.util.Iterator;
private static List<String> someList = new ArrayList<String>();
public static void main(String[] args) {
someList.add("monkey");
someList.add("donkey");
//Code works when I change Iterator to java.util.Iterator, but import
//is not possible?
for(Iterator<String> i = someList.iterator(); i.hasNext(); ) {
String item = i.next();
System.out.println(item);
}
}
我收到错误:Iterator 类型不是通用的;它不能用参数进行参数化
Eclipse 告诉我导入 java.util.Iterator 与同一文件中定义的类型冲突。
【问题讨论】:
-
你笑什么?你有自己的
Iterator类型吗? -
@Mifmif:这是一个完全有效的问题,因为
Iterator<T>被定义为接受一个通用参数。 -
@Mifmif 根本不是一个愚蠢的问题,特别是因为如果他有一个,那会导致这个错误。
-
@Mifmif:你是对的。很明显,OP 有一个基于他/她的日食所说的内容。 - ... import java.util.Iterator 与同一文件中定义的类型冲突。 这应该是那里的提示。
-
注意:你可以这样做 for(String s: someList) {}