转自:
http://www.java265.com/JavaCourse/202206/3750.html
下文是一篇List集合的入门文章,如果笔者是一位入门者,那么这篇文章,你必须认真阅读有序: 存储和取出的元素顺序一致 有索引: 可以通过索引操作元素 可重复: 存储的元素可以重复 注意事项: List集合具有索引,所以我们可使用索引访问元素
ArrayList、LinekdList
方法名称 | 备注 |
void add(int index, E element) | 在此集合中的指定位置插入指定的元素 |
E remove (int index) | 删除指定索引处的元素,返回被删除的元素 |
E set(int index,E element) | 修改指定索引处的元素,返回被修改的元素 |
E get(int index) | 返回指定索引处的元素 |
public static void main(String[] args) { List<String> l = new ArrayList<>(); //1、添加数据 l.add("毛小"); l.add("纪晓敏"); l.add("李晶晶"); l.add("洪文娟"); System.out.println(l); //2、删除指定索引处的元素,返回被删除的元素 System.out.println(l.remove(2)); System.out.println(l); //3、修改指定索引处的元素,返回被修改的元素 System.out.println(l.set(1, "石原里美")); System.out.println(l); //4、返回指定索引处的元素 System.out.println(l.get(2)); System.out.println(l); }
ArrayList底层: 是基于数组实现的,查询元素快,增删相对慢 LinkedList底层: 基于双链表实现的,查询元素慢,增删首尾元素是非常快的
public static void main(String[] args) { List<String> l = new ArrayList<>(); l.add("毛小"); l.add("纪晓敏"); l.add("李晶晶"); l.add("洪文娟"); for (int i = 0; i < l.size(); i++) { System.out.println(l.get(i)); } }
方法名称 | 说明 |
public void addFirst(E e) | 在该列表开头插入指定元素 |
public void addLast(E e) | 在该列表末尾插入指定元素 |
public E getFirst() | 返回此列表中的第一个元素 |
public E getLast() | 返回此列表中的最后一个元素 |
public E removeFirst() | 删除列表中的第一个元素,并返回 |
public E removeLast() | 删除列表中的最后一个元素,并返回 |