3

此代码正在产生一个无限循环:

        for (String element : friendSet) {
        resultNum ++;
        System.out.println("  Result # " + resultNum + " = " + element);
        System.out.print(" friendSet.size() = " + friendSet.size());
    }

friendSet.size() = 2923 但结果不断攀升至数万,直到我强制程序停止。例如:

friendSet.size() = 2923  Result # 7652 = Charlie
friendSet.size() = 2923  Result # 7653 = Jamie
friendSet.size() = 2923  Result # 7654 = Smith

到底是怎么回事?

4

2 回答 2

1

在幕后:java 中的 foreach 循环只使用 objects iterator

friendSet某种自定义的可迭代集合吗?如果是这样,您的迭代器实现不正确。

于 2012-12-17T20:26:39.457 回答
0

我的 for 循环所在的方法被多次调用。谢谢你们的帮助。我的愚蠢错误。

于 2012-12-17T22:04:12.083 回答