【Java数据结构】ArrayList和LinkedList的遍历

一:ArrayList的遍历

复制代码
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;


/**
 * ArrayList的遍历
 */
public class Test {
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<>();
        list.add(5);
        list.add(6);
        list.add(7);
        list.add(8);
        list.add(9);

        //1.直接输出
        System.out.print(list);
        System.out.println();

        //2.for循环
        for (int i = 0; i < list.size(); i++) {
            System.out.print(list.get(i) + " ");
        }
        System.out.println();

        //3.foreach遍历
        for (int x : list) {
            System.out.print(x + " ");
        }
        System.out.println();

        //4.使用迭代器遍历
        Iterator<Integer> it1 = list.listIterator();
        while (it1.hasNext()) {
            System.out.print(it1.next() + " ");
        }
        System.out.println();
    }
}

二:LinkedList的遍历

复制代码
import java.util.LinkedList;
import java.util.ListIterator;

public class Test {
    public static void main(String[] args) {
        LinkedList<Integer> list=new LinkedList<>();
        list.add(1);
        list.add(2);
        list.add(3);
        list.add(4);
        list.add(5);

        //1.直接输出:因为重写了toString()
        System.out.print(list);
        System.out.println();

        //2.foreach遍历
        for (int x:list) {
            System.out.print(x+" ");
        }
        System.out.println();

        //3.使用迭代器遍历------正向遍历
        ListIterator<Integer> it1= list.listIterator();
        while(it1.hasNext()){
            System.out.print(it1.next()+" ");
        }
        System.out.println();

        //4.使用反向迭代器遍历------反向遍历
        ListIterator<Integer> it2= list.listIterator(list.size());
        while(it1.hasPrevious()){
            System.out.print(it1.previous()+" ");
        }
        System.out.println();
    }
}
相关推荐
独好紫罗兰1 分钟前
洛谷题单3-P5719 【深基4.例3】分类平均-python-流程图重构
开发语言·python·算法
27669582922 分钟前
美团民宿 mtgsig 小程序 mtgsig1.2 分析
java·python·小程序·美团·mtgsig·mtgsig1.2·美团民宿
爱的叹息3 分钟前
Java 连接 Redis 的驱动(Jedis、Lettuce、Redisson、Spring Data Redis)分类及对比
java·redis·spring
程序猿chen13 分钟前
《JVM考古现场(十五):熵火燎原——从量子递归到热寂晶壁的代码涅槃》
java·jvm·git·后端·java-ee·区块链·量子计算
篝火悟者14 分钟前
自学-C语言-基础-数组、函数、指针、结构体和共同体、文件
c语言·开发语言
genispan35 分钟前
QT/C++ 多线程并发下载实践
开发语言·c++·qt
松韬1 小时前
Spring + Redisson:从 0 到 1 搭建高可用分布式缓存系统
java·redis·分布式·spring·缓存
-代号95271 小时前
【JavaScript】十三、事件监听与事件类型
开发语言·javascript·ecmascript
姜威鱼1 小时前
蓝桥杯python编程每日刷题 day 21
数据结构·算法·蓝桥杯
绝顶少年1 小时前
Spring Boot 注解:深度解析与应用场景
java·spring boot·后端