温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java LinkedList链表怎样遍历

发布时间:2026-10-23 09:21:24 来源:亿速云 阅读:97 作者:小樊 栏目:编程语言

在 Java 中,LinkedList 是 List 接口的实现,也是双向链表。常见的遍历方式有以下几种:


1️⃣ 普通 for 循环(通过索引)

LinkedList<String> list = new LinkedList<>();
list.add("A");
list.add("B");
list.add("C");

for (int i = 0; i < list.size(); i++) {
    System.out.println(list.get(i));
}

⚠️ 不推荐:get(i) 在 LinkedList 中是 O(n),整体效率 O(n²)


2️⃣ 增强 for 循环(foreach)✅ 推荐

for (String s : list) {
    System.out.println(s);
}

✅ 简洁、可读性好
✅ 底层使用 Iterator


3️⃣ 使用 Iterator(迭代器)

Iterator<String> it = list.iterator();
while (it.hasNext()) {
    System.out.println(it.next());
}

✅ 可在遍历时安全删除元素:

it.remove();

4️⃣ 使用 ListIterator(双向遍历)

ListIterator<String> lit = list.listIterator();
while (lit.hasNext()) {
    System.out.println(lit.next());
}

// 反向遍历
while (lit.hasPrevious()) {
    System.out.println(lit.previous());
}

✅ LinkedList 特有优势(可前后遍历)


5️⃣ Java 8+ forEach + Lambda

list.forEach(System.out::println);

或:

list.forEach(s -> System.out.println(s));

6️⃣ Stream 遍历(Java 8+)

list.stream().forEach(System.out::println);

✅ 推荐总结

场景 推荐方式
简单遍历 增强 for / forEach
需要删除元素 Iterator
需要双向遍历 ListIterator
函数式处理 Stream

如果你有具体使用场景(如删除、查找、性能要求),我可以给出更合适的示例。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手