1.Java中的Iterator功能比较简单,并且只能单向移动:
(1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。注意:iterator()方法是java.lang.Iterable接口,被Collection继承。
(2) 使用next()获得序列中的下一个元素。
(3) 使用hasNext()检查序列中是否还有元素。
(4) 使用remove()将迭代器新返回的元素删除。
2.利用迭代器遍历ArrayList
import java.util.ArrayList;
import java.util.Iterator;
public class ListTest {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(4);
//获取迭代器,将list链表的值存放在迭代器内
Iterator<Integer> iterator = list.iterator();
while (iterator.hasNext()) {//当迭代器有值时
//输出集合元素
System.out.println(iterator.next());
}
}
}
3.利用迭代器遍历hashset
private static void hashset(){
HashSet map=new HashSet();
map.add(1);
map.add(2);
map.add(3);
map.add(4);
map.add(5);
for (Iterator iterator=map.iterator();iterator.hasNext();){
System.out.println(iterator.next());
}
}
4.hashmap遍历
private static void hashmap(){
HashMap<String,Integer> map=new HashMap<>();
map.put("A",1);
map.put("B",2);
map.put("C",3);
map.put("D",4);
for (Iterator iterator=map.entrySet().iterator();iterator.hasNext();){
Map.Entry<String,Integer> entry= (Map.Entry<String, Integer>) iterator.next();
System.out.println(entry.getKey()+" "+entry.getValue());
}
}