无法遍历列表<set <pair =“”>&gt; </set>

时间:2012-07-16 22:06:52

标签: java

以下是我如何申报我的名单。当它应该在我的一个列表中返回一对(这是一个字符串,int对)时,it.next()似乎正在返回我的set。有任何想法吗? 对于Object类型,方法getFirst()是未定义的。似乎如果我这样做,它就修复了这个问题。

String m =((Pair)it.next())。getFirst();

List <HashSet<Pair>>  addresses = new ArrayList <HashSet<Pair>> ();

for (int i = 0; i < 100; i++) {
    Iterator it = (addresses.get(i)).iterator();
    while (it.hasNext()){
        String m = it.next().getFirst()); //getFirst returns a string
    }
}

2 个答案:

答案 0 :(得分:6)

试试这个,它编译得很好:

List<Set<Pair>> addresses = new ArrayList<Set<Pair>>();
// fill the list of addresses

for (int i = 0; i < 100; i++) {
    Iterator<Pair> it = addresses.get(i).iterator();
    while (it.hasNext()) {
        String m = it.next().getFirst();
    }
}

当然,您必须使用上述对的集合填充地址列表以执行有用的操作。

答案 1 :(得分:1)

确保删除while循环内部行末尾的额外括号。看起来应该是这样的

String m = it.next().getFirst();