java 迭代器遍历ListSet和Map

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 迭代器遍历ListSet和Map相关的知识,希望对你有一定的参考价值。

public class test public static void main(String[]args) iteratorlist(); iteratorset(); iteratormap(); //**遍历List** *Iterator<String> it* 获得String类型的迭代器对象 *list.iterator()* 返回一个list容器的对象 *Iterator<String> it=list.iterator()* 初始化迭代器,相当于int i=0 *it.hasNext()* 判断是否有下一个元素 *it.next()* 返回当前元素,并将游标移至下一个元素 public static void iteratorlist() List<String> list=new ArrayList<>(); list.add("aa"); list.add("bb"); list.add("cc"); //初始化迭代器对象,相当于int i=0; for(Iterator<String> it=list.iterator();it.hasNext();) //判断条件,是否有下一个 String s=it.next(); //返回当前元素,并且使得游标指向下一个 System.out.println(s); **//遍历Set** public static void iteratorset() Set<String> set= new HashSet<>(); set.add("dd"); set.add("ee"); set.add("ff"); for(Iterator<String> it=set.iterator(); it.hasNext();) String s=it.next(); System.out.println(s); **//遍历Map** * map.entrySet() Map键值对存放在节点里,相当于放回一个键值对的集合* *Entry<Integer,String> 就相当于返回的一个键值对的集合* * Set<Entry<Integer,String>> 相当于将每一对集合放进Set大集合里,Set的元素就是键值对的集合* *Iterator<Entry<Integer,String>> it迭代器遍历Set就相当于遍历里面的每一对集合* * Entry<Integer,String> s=it.next(); it.next()返回的是一个键值对集合* * s.getKey() 返回键值* *s.getValue() 返回键对应的值* public static void iteratormap() Map<Integer,String> map=new HashMap<>(); map.put(1,"gg"); map.put(2,"hh"); map.put(3, "ii"); **//第一种遍历方式** Set<Entry<Integer,String>> ss=map.entrySet(); //map键值对是存放在节点里面,通过entrySet()获得键值对 //的集合 for(Iterator<Entry<Integer,String>> it=ss.iterator();it.hasNext();) Entry<Integer,String> s=it.next(); System.out.println(s.getKey()+"+"+s.getValue()); ** //第二种遍历方式,相当于遍历集合** Set<Integer> ss=map.keySet(); 相当于建立一个包含所以键的集合 再通过Map自带方法map.get(key)返回键对应的值,达到遍历效果 Set<Integer> ss=map.keySet(); for(Iterator<Integer> it=ss.iterator();it.hasNext();) Integer i=it.next(); System.out.println(i+"+"+map.get(i));

以上是关于java 迭代器遍历ListSet和Map的主要内容,如果未能解决你的问题,请参考以下文章

Map集合遍历的2种方法

用迭代器iterator遍历list中第一条数据和最后一条数据 并判断

用迭代器iterator遍历list中第一条数据和最后一条数据 并判断

Java全栈JavaSE:20.集合之CollectionIterator迭代器ListSet

Java中定义一个迭代器(Iterator)遍历完一个集合后,如果还要再遍历一次这个集合?

c++ map使用问题和迭代器问题 编译器:VS2010旗舰版