ArrayList集合遍历的七种方式

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;public class Ergodic {public static void main(String[] args) {System.out.println("ArrayList集合的遍历");List list = new ArrayList();list.add(1);list.add(2);System.out.println("1.for循环:");for(int i = 0; i<list.size(); i++) {System.out.println(list.get(i));}System.out.println("2.foreach循环:");for(Object l : list) {System.out.println(l);}System.out.println("3.链表变为数组内容后遍历:");Integer[] inteArray = new Integer[list.size()];list.toArray(inteArray);for(int inte : inteArray) {System.out.println(inte);}System.out.println("4.while迭代器遍历:");Iterator iterator1 = list.iterator();while(iterator1.hasNext()) {// hasNext()方法:判断该指针所指位置是否有元素System.out.println(iterator1.next());// next()方法:1.获取该指针指向的元素 2.并把指针指向下一个元素(即指针后移一位)}System.out.println("5.for迭代器遍历:");//该处将while改为for循环遍历,可以当遍历完后便释放迭代器对象,更节省内存for(Iterator iterator3 = list.iterator(); iterator3.hasNext() ;) {System.out.println(iterator3.next());}System.out.println("6.1 ListIterator迭代器向后遍历:");ListIterator iterator2 = list.listIterator();while(iterator2.hasNext()) {// 将list集合先从头向后遍历,指针指向最后System.out.println(iterator2.next());}System.out.println("6.2 ListIterator迭代器向前遍历");while(iterator2.hasPrevious()) {// 将list集合从末尾先前遍历,指针指到第一个元素System.out.println(iterator2.previous());}        }
}

对于集合的遍历,推荐下面代码,节省内存.

for(Iterator iterator3 = list.iterator(); iterator3.hasNext() ;) {
            System.out.println(iterator3.next());
        }

还有对于集合的foreach遍历集合,其实就是反编译后就是上面的代码.若想节省内存还是推荐上面代码.

Java8可以使用Stream API来遍历集合

// List集合遍历的第八种方式
list.stream().forEach(System.out::println);

集合反编译代码

// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space
// Source File Name:   Ergodic.javaimport java.io.PrintStream;
import java.util.*;public class Ergodic
{public Ergodic(){}public static void main(String args[]){System.out.println("ArrayList集合的遍历");List list = new ArrayList();list.add(Integer.valueOf(1));list.add(Integer.valueOf(2));System.out.println("1.for循环:");for (int i = 0; i < list.size(); i++)System.out.println(list.get(i));System.out.println("2.foreach循环:");Object l;for (Iterator iterator = list.iterator(); iterator.hasNext(); System.out.println(l))l = iterator.next();System.out.println("3.链表变为数组内容后遍历:");Integer inteArray[] = new Integer[list.size()];list.toArray(inteArray);Integer ainteger[];int j1 = (ainteger = inteArray).length;for (int i1 = 0; i1 < j1; i1++){int inte = ainteger[i1].intValue();System.out.println(inte);}System.out.println("4.while迭代器遍历:");for (Iterator iterator1 = list.iterator(); iterator1.hasNext(); System.out.println(iterator1.next()));System.out.println("5.for迭代器遍历:");for (Iterator iterator3 = list.iterator(); iterator3.hasNext(); System.out.println(iterator3.next()));System.out.println("6.1 ListIterator迭代器向后遍历:");ListIterator iterator2;for (iterator2 = list.listIterator(); iterator2.hasNext(); System.out.println(iterator2.next()));System.out.println("6.2 ListIterator迭代器向前遍历");for (; iterator2.hasPrevious(); System.out.println(iterator2.previous()));}
}

数组

                System.out.println("数组的遍历");int[] a = new int[] {1,2};System.out.println("1.for循环:");for (int i = 0; i < a.length; i++) {System.out.println(a[i]);}System.out.println("2.foreach循环:");for(int b : a) {System.out.println(b);}System.out.println("3.Arrays工具类:");System.out.println(Arrays.toString(a));

数组反编译代码

                System.out.println("数组的遍历");int a[] = {1, 2};System.out.println("1.for循环:");for (int i = 0; i < a.length; i++)System.out.println(a[i]);System.out.println("2.foreach循环:");int ai[];int k = (ai = a).length;for (int j = 0; j < k; j++){int b = ai[j];System.out.println(b);}System.out.println("3.Arrays工具类:");System.out.println(Arrays.toString(a));

ArrayList集合遍历的八种方式相关推荐

  1. Map集合遍历的四种方式理解和简单使用

    Map集合遍历的四种方式理解和简单使用 ~Map集合是键值对形式存储值的,所以遍历Map集合无非就是获取键和值,根据实际需求,进行获取键和值 1:无非就是通过map.keySet()获取到值,然后根据 ...

  2. java的list遍历_【java】list集合遍历的5种方式

    平凡也就两个字: 懒和惰; 成功也就两个字: 苦和勤; 优秀也就两个字: 你和我. 跟着我从0学习JAVA.spring全家桶和linux运维等知识,带你从懵懂少年走向人生巅峰,迎娶白富美! 关注微信 ...

  3. Map集合遍历的三种方式

    Map集合遍历的三种方式 遍历Map集合的三种方式 键找值 键值对 Lambda表达式 方式一 : 键找值 先获取Map集合的全部键的Set集合 遍历键的Set集合,然后通过键提取对应值 原理图 键找 ...

  4. List和Map集合遍历的3种方式

    一.list代码模板 ArrayList<String> list = new ArrayList<>();list.add("zhangsan");lis ...

  5. java对集合遍历的四种方式

    目录 文章目录 目录 1.背景 2.添加集合 3.遍历集合 3.1 普通循环遍历 3.2 迭代器遍历 3.3 增强for遍历(foreach) 3.4 list.forEach 4.总结 1.背景 目 ...

  6. Set集合遍历的几种方式

    Set集合特点:无序,没有索引,元素唯一 所以总结一下set集合的遍历方法 import java.util.HashSet; import java.util.Iterator; import ja ...

  7. java中map集合遍历的五种方式

    建立一个map,并存入数据 Map<Integer,Integer> map = new HashMap<>(); 第一种遍历方式,通过keySet() for(Integer ...

  8. List集合遍历的5种方式

    List遍历方式 list遍历分为以下五种 for循环 foreach 迭代器Iterator遍历 List集合自带迭代器 JDK8新特性Lambda package com.cn.common;im ...

  9. map集合遍历的4种方式

    package com.lidl.com.lidl.web;import java.util.HashMap; import java.util.Iterator; import java.util. ...

最新文章

  1. 使用YOLOv5模型进行目标检测!
  2. COM:下一代微生物组技术在作物生产中的应用——局限性以及基于知识的解决方案的需求
  3. 李剑锋:意识科学就在身边
  4. Keepalived中Master和Backup角色选举策略
  5. 自学篇之-----纯css做的漂亮的单选框复选框样式
  6. photoimpression 5中文版
  7. 知识图谱实践篇(五):KBQA Demo
  8. 终极Java日志字典:开发人员最常记录的单词是什么?
  9. 三个监控linux网卡流量脚本
  10. python snmp采集交换机信息_交换机和大机技术术语(大全)
  11. 继 Swin Transformer 之后,MSRA 开源 Video Swin Transformer,在视频数据集上SOTA
  12. postgresql 备份 java_用JAVA执行CMD命令备份PG数据库,解决需要输入口令的问题
  13. jq json格式化工具
  14. 电商后台设计-组织架构(三)
  15. 【场景化解决方案】OA审批与金蝶云星空集成
  16. Java 添加Word项目符号、编号列表
  17. SpringBoot 项目使用 Apache POI 解析 Word 的 docx 文档的图片和文字内容
  18. 最详细的Keycloak教程:Keycloak实现手机号、验证码登陆——(一)Keycloak的下载与使用
  19. 属性与意图识别_攻击意图动态识别模型
  20. JSP入门教程(二)

热门文章

  1. Flutter入门系列(二)---Flutter的原理及美团的实践
  2. dedecms \plus\guestbook.php SQL Injection Vul By \plus\guestbook\edit.inc.php
  3. echarts换主题颜色(在vue中使用)
  4. 王权富贵:使用html对CSDN博客进行转载
  5. 基于GA优化RBF神经网络(GA-RBF)数据预测的matlab仿真
  6. 东吴策略市场温度计:公募抱团加强,风格偏向价值20210105.PDF
  7. 如何搭建自己的iPhone Installer软件源
  8. 淮南市外观设计专利申请条件,简要说明要写哪些内容?
  9. zabbix低级自动发现(DDL)
  10. 为Java程序员准备的Go语言入门PPT