-1

在 C++ 中,STL 中的迭代器非常有用。我可以编写独立于容器的代码来处理序列。

但是,我发现IteratorJavaListIterator非常差。他们甚至不支持clone()。我认为用它们处理序列是不可能的。

做到这一点的唯一方法似乎是永远使用数组,但是当我将数组更改为Lists 时如何重用我的代码?


处理序列就是对一个Objects的序列做一些算法。例如,对它们进行排序、查找最大值、删除重复项。

4

2 回答 2

2
List<Type> list = new List<Type>
//add the elements...

for(Type t : list)
   //do you stuff with t

通常,您不需要在 Java 中显式使用迭代器。此外,请小心使用 .clone(),因为它很少是最合适的解决方案。

List 本身就是一个接口,由不同的容器实现。

于 2012-04-30T15:43:59.690 回答
0

我会使用 List<Type>,并避免使用 clone(),因为它并不总是按照您的想法进行。即它可以是浅的或深的,具体取决于实现。

List 是一个基础类。也许如果您举例说明您遇到的问题,我们可以为您提供帮助。

于 2012-04-30T15:45:13.650 回答