您的位置:首页 > 新闻 > 热点要闻 > Java之迭代器的使用

Java之迭代器的使用

2024/10/6 14:33:01 来源:https://blog.csdn.net/m0_53573725/article/details/141405991  浏览:    关键词:Java之迭代器的使用

Java之迭代器的使用

  • 摘要
    • 基础知识
    • List迭代器
    • Map迭代器

摘要

本博客主要讲解容器的迭代器的使用,包括List、Set和Map等容器

基础知识

这是类的继承关系图
在这里插入图片描述
迭代器的原理(一开始迭代器并不指向任何有效元素):
在这里插入图片描述

List迭代器

public class TestIterator {public static void main(String[] args) {testIteratorList();}public static void testIteratorList(){List<String> list = new ArrayList<>();list.add("aa");list.add("bb");list.add("cc");//底下就是迭代器遍历打印list中的元素for( Iterator<String> iter = list.iterator(); iter.hasNext();){String temp = iter.next();System.out.println(temp);}}
}

Map迭代器

public class TestIterator {public static void main(String[] args) {testIteratorMap();}public static void testIteratorMap(){Map<Integer, String> map1 = new TreeMap<>();map1.put(100,"aa");map1.put(200, "bb");//Map每个元素都是一个节点,节点的类型为Map.Entry<Integer, String>,这里把map1转换为集合Set<Map.Entry<Integer, String>> set = map1.entrySet();//处理集合的方法for( Iterator<Map.Entry<Integer, String>> iter = set.iterator(); iter.hasNext();){Map.Entry<Integer, String> temp = iter.next();//获取节点的key和valueSystem.out.println(temp.getKey() + ":" + temp.getValue());}}
}

其他的方法:

public class TestIterator {public static void main(String[] args) {testIteratorMap();}public static void testIteratorMap(){Map<Integer, String> map1 = new TreeMap<>();map1.put(100,"aa");map1.put(200, "bb");//把map1的键全部取出来Set<Integer> set = map1.keySet();for( Iterator<Integer> iter = set.iterator(); iter.hasNext();){Integer temp = iter.next();System.out.println(map1.get(temp));}}
}

参考:迭代器

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com