java.util.Iterator但无法导入java.util.Iterator

时间:2014-06-05 15:19:29

标签: java iterator

鉴于此代码

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告诉我,import java.util.Iterator与同一文件中定义的类型冲突。

2 个答案:

答案 0 :(得分:6)

  

我收到错误:Iterator类型不是通用的;它不能用参数

参数化      

Eclipse告诉我,import java.util.Iterator与同一文件中定义的类型冲突。

我能解决这两个确切错误的唯一方法就是调用我的班级Iterator。我想如果你正在写一个关于迭代的小测试类,这将是一个容易犯的错误:

import java.util.Iterator;
import java.util.ArrayList;
import java.util.List;

public class Iterator {

    private static List<String> someList = new ArrayList<String>();

    public static void main(String[] args) {
        someList.add("monkey");
        someList.add("donkey");

        for (Iterator<String> i = someList.iterator(); i.hasNext();) {
            String item = i.next();
            System.out.println(item);
        }
    }
}

解决方案:不要这样做。称之为别的。

尝试猜测你的代码看起来很有趣,如果你在问题中发布了一个完整的例子,这将是一个短暂的过程。我并不排除有另一个代码示例会产生这些错误,尽管我没有找到一个经过一些实验的代码。

答案 1 :(得分:0)

检查您的导入声明 您可能已经从另一个包中导入迭代器,首先组织您的导入 删除那些导入和 添加

import java.util.Iterator;

希望它适合你