一:概念
List是Java集合Collection中的一個接口,通常用ArrayList類和LinkedList類去實現這個接口。
Collection集合還有其餘接口:Map,Set(在個人另外一篇博客)
二:LIST的使用
List的經常使用方法java
boolean add(E e) //尾插 e void add(int index, E element) //將 e 插入到 index 位置 boolean addAll(Collection<? extends E> c) //尾插 c 中的元素 E remove(int index) //刪除 index 位置元素 boolean remove(Object o) // 刪除遇到的第一個 o E get(int index) //獲取下標 index 位置元素 E set(int index, E element) //將下標 index 位置元素設置element void 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 ArrayList ArrayList(int initialCapacity) //指定順序表初始容量
LinkedList() 的經常使用方法LinkedList() //無參構造
三:List的代碼示例ide
import java.util.List; import java.util.ArrayList import 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; 錯誤的類型 } }