List集合

Posted sx-wang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了List集合相关的知识,希望对你有一定的参考价值。

ArrayList集合:底层是数组实现、查询快、增删慢。

LinkedList集合:底层是链表实现、查询慢、增删快。

 1 package java.Internet;
 2 
 3 import java.util.ArrayList;
 4 import java.util.List;
 5 
 6 /**
 7  * @author Sx-Wang
 8  * @data 2020-06-05 23:04
 9  */
10 public class ListTest {
11     public static void main (String[] args) {
12         List<String> list = new ArrayList<>();// 创建ArrayList集合
13         list.add("你");//add(E e)  添加e元素
14         list.add(0, "中");  // add(int index,E e ) 在index索引位置添加e元素
15         list.get(0); // get(int index) 获取索引为index的元素
16         list.set(1, "吖"); // set(int index, E element) 将索引index的元素替换为element元素并返回之前的元素
17         list.remove("你"); // remove(E e) 删除指定的元素
18         list.remove(1); // remove(int index) 删除索引值为index的元素并返回
19         
20     }
21 }
LinkedList使用双向链表实现存储,将内存中零散的内存单元通过附加的引用关联起来,形成一个可以按序号索引的线性结构,这种链式存储方式与数组的连续存储方式相比,其实对内存的利用率更高。
LinkedList集合中包含了大量操作首尾元素的方法,下面来讲讲一些常用的方法
 1 package java.Internet;
 2 
 3 import java.util.LinkedList;
 4 
 5 /**
 6  * @author Sx-Wang
 7  * @data 2020-06-05 23:04
 8  */
 9 public class ListTest {
10     public static void main (String[] args) {
11         LinkedList<Integer> linkedList = new LinkedList<>();// 创建LinkedList集合
12         // 添加
13         linkedList.addFirst(1); // 在集合开头添加元素  也可以用push(E e) 方法 一样的效果
14         linkedList.addLast(0); //在集合结尾添加元素   和add(E e) 方法一样
15         // 获取
16         linkedList.getFirst(); // 获取第一个元素
17         linkedList.getLast(); // 获取最后一个元素
18         //注意集合如果清空后在获取就会抛出异常
19         
20         /*
21         删除元素
22         public E removeFrist(); 删除并返回第一个元素  也可以用pop()
23         public E removeLast(); 删除最后一个元素并返回
24          */
25         linkedList.removeFirst();
26         linkedList.removeLast();
27 
28     }
29 }

ArrayList底层是个数组,但是线程不安全  方法和List方法差不多。

以上是关于List集合的主要内容,如果未能解决你的问题,请参考以下文章

第九次作业

代码片段 - Golang 实现集合操作

laravel特殊功能代码片段集合

ArrayUtil-将集合按指定个数分为多个集合

201621123042《java程序设计》第九次作业

201621123057 《Java程序设计》第9周学习总结