几种list循环的方法
来源:互联网 发布:数据库建模培训 编辑:程序博客网 时间:2024/05/20 20:57
List
List<Map<String, String>> maps = new ArrayList<>(); Map<String, String> ccc; for (int i = 0; i < 10; i++) { ccc = new HashMap<>(); ccc.put(i + "", i * 1111 + ""); maps.add(ccc); } System.out.println("============="); // for (Map<String, String> mapString : maps) { // for (String str : mapString.keySet()) { // System.out.println(mapString.get(str)); // } // } System.out.println("+++++++++++++++++++++="); for (Map<String, String> mapString : maps) { for (String a : mapString.values()) { System.out.println(a.toString()); } } System.out.println("----------------------------"); for (Map<String, String> map : maps) { Iterator<Map.Entry<String, String>> mapIterator = map.entrySet().iterator(); while (mapIterator.hasNext()) { Map.Entry<String, String> m = mapIterator.next(); System.out.println(m.getKey() + " " + m.getValue()); } } System.out.println("-=-=-=-=-=-=-=-=-=-=-=-=-=-=-="); Iterator<Map<String, String>> mapIterator = maps.iterator(); while (mapIterator.hasNext()) { Map<String, String> a = mapIterator.next(); for (String str : a.keySet()) { System.out.println(a.get(str)); } } System.out.println("(()()()()()()))()()()()()()()()()");
‘集中常见的 循环方法的时间:×(for foreach 和 Iterator 三种对比)
有兴趣的可以运行,查看时间对比;
List<String> list = new ArrayList<String>(); Set<String> set = new HashSet<String>(); for (int i = 0; i < 10000; i++) { list.add("a" + i); } long t1 = 0L, t2 = 0L; t1 = System.currentTimeMillis(); for (String s : list) { set.add(s); }// for (String v : list) {// System.out.print(v.toString());// } t2 = System.currentTimeMillis(); System.out.println(); System.out.println("forEach遍历的时间为:" + (t2 - t1) + "mm"); //// two t1 = System.currentTimeMillis(); for (int i = 0; i < list.size(); i++) { set.add(list.get(i)); }// for (int i = 0; i < list.size(); i++) {// System.out.print(list.get(i));// } t2 = System.currentTimeMillis(); System.out.println(); System.out.println("size遍历的时间为:" + (t2 - t1) + "mm"); //// three t1 = System.currentTimeMillis(); Iterator<String> iterator = list.iterator(); while (iterator.hasNext()) { set.add((String) iterator.next()); }// Iterator<String> iterator1 = list.iterator();// while (iterator1.hasNext()) {// System.out.print(iterator1.next());// } t2 = System.currentTimeMillis(); System.out.println(); System.out.println("iterator遍历的时间为:" + (t2 - t1) + "mm"); System.out.println("--=-==========================");
注意:使用迭代容易出现java.util.NoSuchElementException的错误,所有使用迭代要遍历对next()的重复使用,要不然会出现java.util.NoSuchElementException的错误。
0 0
- 几种list循环的方法
- Struts:tags:iterator Struts循环list的几种方法
- list 循环几种用法
- 循环滚动字符串的几种方法
- 跳出多层循环的几种方法
- C跳出循环的几种方法
- 循环遍历的几种方法
- List元素的几种for循环方式及其点评
- List元素的几种for循环方式及其点评
- 几种遍历 List 的方法
- 几种遍历list集合的方法
- 遍历list的几种方法
- 数组转为list的几种方法
- 学习List的几种遍历方法
- List去重的几种方法
- list转String的几种方法
- javascript循环性能优化的几种方法
- 如何跳出多重嵌套循环的几种方法
- 【作业】用c++定义一个student类
- [Usaco1.3&luogu1209] Barn Repair
- Java 设计模式-单例模式
- android 静态mac地址的设置(or SN IMEI 自定义数据)
- Android(二) 开发环境的搭建(一、Eclipse)
- 几种list循环的方法
- 提高生产力:小雷之问和京东之答
- 高通工具QACT使用之MBDRC模块配置
- C/C++编程规范(一)命名篇
- hdu1069 Monkey and Banana dp
- [Usaco07Mar&luogu2884]Monthly Expense
- 没有上司的舞会
- 洛谷 p1478
- LeetCode No.84 Largest Rectangle in Histogram