今天在看别人程序时看到 Iterator 在程序中用法,感觉自己对这个Iterator 好像不知道似的,确实也不太清楚,平时写程序也没有用过,到网上查了下它的用法,感觉也不是很很难,做过笔记。以前可以用Iterator 了。
先看一段程序例子:
String s[] = {"hello","world"};
List str = new ArrayList();
for(int i = 0; i < 2; i++){
str.add(new String(s[i]));
}
Iterator e = str.iterator();
while(e.hasNext()){
System.out.println((String)e.next());
}
下面让我们对着API了解一下这个Iterator :
iterator重载了collection,在Java集合框架中Iterator用来替代Enumeration,Iterator允许调用者使用好的语义在迭代中从底层集合中删除元素。 该接口是Java集合框架成员。
Method Summary | |
boolean | hasNext() Returns true if the iteration has more elements. 如果迭代中还有元素返回true。 |
Object | next() Returns the next element in the iteration. 返回迭代中的下一个元素。 |
void | remove() Removes from the underlying collection the last element returned by the iterator (optional operation). 迭代器从底层集合中删除刚返回的元素(可选操作)。 |
Method Detail |
hasNext
public boolean hasNext()
如果迭代中还有元素返回true。(换言之,如果next返回一个元素而不是抛出异常的话,返回true。) ,
如果迭代中还有元素返回true
next
public Object next()返回迭代中的下一个元素。如果迭代中没有元素时抛出。remove
public void remove()迭代器从底层集合中删除刚返回的元素(可选操作)。该方法只能在每次调用next后调用一次。
如果底层集合已被修改而迭代器正在进程中(除了调用本方法),则迭代器的行为不能确定。