1. 程式人生 > 實用技巧 >List容器

List容器

List容器是元素有序、且可重複的,容器中的每個元素都有其對應的順序索引。

List允許使用重複元素,預設按照元素的新增順序來設定元素的索引。

ArrayList和Vector是List介面的兩個典型的實現,區別於下:

  • Vector(有些古老)是執行緒安全的,ArrayList是執行緒不安全的。
  • 即使為了保證List集合執行緒安全,也不推薦使用Vector
import java.util.List;
import java.util.*;

//List是一個介面,ArrayList類實現了List介面
public class Test2 {
    public static void
main(String[] args) { //介面能接受其實現類建立的物件 List<String> list = new ArrayList<String>(); list.add("Hello"); list.add("World"); list.add("Xi'an"); list.add("Jiaotong"); list.add("University"); list.add("Hello"); //List容器允許重複
//指定索引下標插入數值 list.add(2,"Xia Zhenbin"); //通過索引的位置來訪問制定的集合元素 System.out.println(list.get(0)); System.out.println(list); List<String> l = new ArrayList<>(); l.add("Smart"); list.addAll(2, l); // 在指定元素索引位置插入集合
System.out.println(list); list.add("Hello"); System.out.println(list); //獲取指定元素在集合中第一次出現的下表 System.out.println(list.indexOf("Xi'an")); //獲取指定元素在集合中最後一次出現的下表 System.out.println(list.lastIndexOf("Hello")); list.remove(2); //根據指定的索引下標移除元素 System.out.println(list); list.set(2, "Li Ying"); //修改指定索引的元素 System.out.println(list); List<String> substr = list.subList(2, 5); //擷取元素形成新的結合,結果是左閉右開 System.out.println(substr); System.out.println(list.size()); //ArrayList是執行緒不安全的,Vector是執行緒安全的 } }