Linkedlist是每次遍历都从第一个吗?有多少种遍历方式?

2020-05-07 17:36:15 java常见问答 6733

关注过java软件开发相关知识的朋友们,大概都对列表不会感到陌生吧,是的就是list,作为一个存储各种数据类型的集合,它确实值得我们关注,那么你是否了解list中的一个分类Linkedlist呢?Linkedlist每次遍历都会从第一个开始吗?它又有几种遍历方式呢?

首先我们得明确,LinkedList是双向链表实现的;而且ListLinkedList是非线程安全的;LinkedList元素是允许为null的,并且允许重复元素LinkedList是基于链表来实现的,所以插入删除等操作效率会较高,查找效率低,LinkedList正是基于链表实现的原因,所以不存在容量不足的问题,因此没有扩容的方法LinkedList还实现了栈和队列的操作方法,所以也可以作为栈、队列和双端队列来使用的,因此Linkedlist每次遍历都是从第一个开始的也并不奇怪了。

Linkedlist遍历方式有以下四种:

用迭代器遍历

用列表迭代器遍历

用size(),get()遍历

用增强for遍历

首先是用迭代器遍历:

 Iterator iterator = students.iterator();
 while (iterator.hasNext())
 {
     System.out.println(iterator.next());
 }

第二种是用列表迭代器遍历 :

 ListIteratorlistIterator = students.listIterator();
 while (listIterator.hasNext())
 {
     ystem.out.println(listIterator.next());
 }

第三种是用size(),get()遍历:

for (int i = 0; i < students.size(); i++)
{
    < p = "" >
        System.out.println(students.get(i));
}

最后是增强for遍历:

for (Student str: students)
{
    System.out.println(str.getName() + "-->" + str.getAge());
}

好了,以上就是本篇文章的所有内容了,还想了解更多java常见问答知识,记得马上来关注本站消息,获取更多信息。

推荐阅读:

java遍历数组的方式有哪些?

java二叉树遍历算法有哪些?如何操作?

判断数组是不是二叉搜索树的后序遍历的结果(思路和实现)