list索引从几开始_深度解析List

2023-05-16

73aba16329f4abc172304b8e8a345b2e.gif

点击上面“蓝字”关注我哦!

1.概述

在集合类中,List是最基础的一种集合:它是一种有序列表。

List的行为和数组几乎完全相同:List内部按照放入元素的先后顺序存放,每个元素都可以通过索引确定自己的位置,List的索引和数组一样,从0开始。

2.特点

有序(存储和取出的元素一致),可重复的。

02bd6b7964ce22a845640430bd9920c5.png

3.功能

4b7f63167279a4705c2c723d0ec3435a.png

以下是例子:

d5fd5b915938fe3b9f1050107cb726de.png

List还允许添加null:

662af8d1a57bb5924a374ad40f66fa36.png

4.创建List

除了使用ArrayList和LinkedList,我们还可以通过List接口提供的of()方法,根据给定元素快速创建List:

List list = List.of(1, 2, 5);

但是List.of()方法不接受null值,如果传入null,会抛出NullPointerException异常。

5.遍历List

和数组类型,我们要遍历一个List,完全可以用for循环根据索引配合get(int)方法遍历:

7fc0049e007fcfcd7eb3286429bee6ac.png

tip:

但这种方式并不推荐,一是代码复杂,二是因为get(int)方法只有ArrayList的实现是高效的,换成LinkedList后,索引越大,访问速度越慢。 所以我们要始终坚持使用迭代器Iterator来访问List。Iterator本身也是一个对象,但它是由List的实例调用iterator()方法的时候创建的。Iterator对象知道如何遍历一个List,并且不同的List类型,返回的Iterator对象实现也是不同的,但总是具有最高的访问效率。 Iterator对象有两个方法:boolean hasNext()判断是否有下一个元素,E next()返回下一个元素。因此,使用Iterator遍历List代码如下:

aa649b9bd300c8f8159413f7ed95595e.png

tip:

有童鞋可能觉得使用Iterator访问List的代码比使用索引更复杂。但是,要记住,通过Iterator遍历List永远是最高效的方式。并且,由于Iterator遍历是如此常用,所以,Java的foreach循环本身就可以帮我们使用Iterator遍历。把上面的代码再改写如下:

f1d2f18272df6350310e16deb3470a3a.png

♡♡♡♡♡♡♡♡♡♡

9c8b30b72646e7978ae85d89bbe69b8f.gif

f17be3528cd89736bc5f2eb3d6f4233d.png

f042d0284dc2bfe8b12124710082ed94.gif

扫我

带你一起看樱花

78262b10a9325cb33b25f439791ebcea.gif 您点的每个赞,我都认真当成了喜欢
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

list索引从几开始_深度解析List 的相关文章

随机推荐