一:概念
List是Java集合Collection中的一个接口,一般用ArrayList类和LinkedList类去实现这个接口。
二:LIST的使用
List的常用方法

boolean add(E e) //尾插 evoid add(int index, E element) //将 e 插入到 index 位置boolean addAll(Collection<? extends E> c) //尾插 c 中的元素E remove(int index) //删除 index 位置元素boolean remove(Object o) // 删除遇到的第一个 oE get(int index) //获取下标 index 位置元素E set(int index, E element) //将下标 index 位置元素设置elementvoid clear() //清空boolean contains(Object o) //判断 o 是否在线性表中int indexOf(Object o) //返回第一个 o 所在下标int lastIndexOf(Object o) //返回最后一个 o 的下标List<E> subList(int fromIndex, int toIndex) //截取部分 list

ArrayList() 的常用方法

ArrayList() //无参构造ArrayList(Collection<? extends E> c) //利用其他 Collection ArrayListArrayList(int initialCapacity) //指定顺序表初始容量

LinkedList() 的常用方法
LinkedList() //无参构造
三:List的代码示例

import java.util.List;import java.util.ArrayListimport java.util.LinkedList;public class ListDemo {public static void main(String[] args) { List<String> courses = new ArrayList<>();courses.add("C 语言"); courses.add("Java SE");courses.add("Java Web"); courses.add("Java EE"); // 和数组一样,允许添加重复元素 courses.add("C 语言"); // 按照添加顺序打印System.out.println(courses); // 类似数组下标的方式访问 System.out.println(courses.get(0)); System.out.println(courses); courses.set(0, "计算机基础");System.out.println(courses); // 截取部分 [1, 3) List<String> subCourses = courses.subList(1, 3); System.out.println(subCourses); // 重新构造List<String> courses2 = new ArrayList<>(courses); System.out.println(courses2);List<String> courses3 = new LinkedList<>(courses); System.out.println(courses3); // 引用的转换 ArrayList<String> courses4 = (ArrayList<String>)courses2; System.out.println(courses4);// LinkedList<String> c = (LinkedList<String>)course2; 错误的类型 LinkedList<String> courses5 = (LinkedList<String>)courses3; System.out.println(courses5);// ArrayList<String> c = (ArrayList<String>)course3; 错误的类型}}