[color=green]Collection[/color]接口是Java集合框架中的基本接口,其中有一个最基本的方法
这个[color=green]Iterator[/color]接口,是Java中集合([color=green]Set[/color],[color=green]List[/color],[color=green]Queue[/color])中的迭代器,它提供了最基本的三个方法
如果不断调用集合的迭代器中的next(),会遍历整个集合,但是,如果遍历到集合的末尾,会引发
NoSuchElementException,因此,正确的调用方法应该是:
不过jdk5.0提供了一种更好的方式:
再剩下的一个基本方法是remove(),它用于删除集合中的元素,不过删除时的方式要注意,
比如有一个list,要删除该list中的第一元素,应该使用:
具体的原因,在回顾具体的集合类时会再做分析。
public interface Collection<E> {
// ...
Iterator<E> iterator();
// ...
}
这个[color=green]Iterator[/color]接口,是Java中集合([color=green]Set[/color],[color=green]List[/color],[color=green]Queue[/color])中的迭代器,它提供了最基本的三个方法
public interface Iterator<E> {
boolean hasNext();
E next();
void remove();
}
如果不断调用集合的迭代器中的next(),会遍历整个集合,但是,如果遍历到集合的末尾,会引发
NoSuchElementException,因此,正确的调用方法应该是:
Collection c = ...
Iterator it = c.iterator();
while(it.hasNext()) {
it.next();
}
不过jdk5.0提供了一种更好的方式:
Collection c = ...
for(Object obj : c) {
}
再剩下的一个基本方法是remove(),它用于删除集合中的元素,不过删除时的方式要注意,
比如有一个list,要删除该list中的第一元素,应该使用:
List<String> list = new LinkedList<String>();
list.add("a");
list.add("b");
list.add("c");
Iterator it = list.iterator();
it.next();
it.remove(); // 注意:这里不能直接使用remove(),如果调用,会抛IllegalStateException
具体的原因,在回顾具体的集合类时会再做分析。