Java Iterator接口

来源:互联网 发布:sql连接服务器 编辑:程序博客网 时间:2024/06/16 01:22

集合框架之Iterator是我们常用的重中之重.

1.所有实现Collection接口的容器类都有一个iteractor方法,用于返回一个实现了Iteractor接口的对象, 
2.Iteractor对象成为迭代器,用以实现对容器内元素的遍历操作 
3.Iteractor接口定义了三个方法 hasNext(), next(), remove();

这里写图片描述

用代码示例:

 import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.Set;public class IteratorTest { /** * @param args */public static void main(String[] args) {    iterList();    iterSet();    iterMap();}private static void iterList() {    List<String> list = new ArrayList<String>();    list.add("Java");    list.add("Android");    list.add("Ios");    for(Iterator<String> iterator = list.iterator();iterator.hasNext();){        String str = iterator.next();        System.out.println(str);    }}private static void iterSet() {    Set<String> set = new HashSet<String>();    set.add("Java2");           set.add("Android2");    set.add("Ios2");    Iterator<String> iterator = set.iterator();    while (iterator.hasNext()) {        String str = iterator.next();        System.out.println(str);    }}private static void iterMap() {   Map<String, String> map = new HashMap<String, String>();   map.put("key1", "java3");   map.put("key2", "Android3");   map.put("key3", "Ios3");   /**Map迭代键key和值value*/   Iterator<Entry<String, String>> iter = map.entrySet().iterator();   while (iter.hasNext()) { //是否有元素    Map.Entry<String, String> entry = iter.next();//返回元素    String key = entry.getKey();    String value = entry.getValue();    System.out.println(key + ":" + value);}   /**Map迭代键key*/   Iterator<String> keyIter = map.keySet().iterator();   while (keyIter.hasNext()) {    String string = (String) keyIter.next();    System.out.println(string);}} }

打印:

Java 
Android 
iOS 
Java2 
Ios2 
Android2 
key1:java3 
key2:Android3 
key3:Ios3 
key1 
key2 
key3

0 0
原创粉丝点击