Java中的List接口


List接口:

           list接口是Collection接口的子類,其繼承了Collection接口的所有方法,但也有其獨有的方法,不過在迭代的時候不要進行任何操作。牢記數據存儲的四種結構:堆棧、隊列、數組、鏈表,並指導其區別和適合用於什么場景下。特別注意的是LinedList接口中判斷是否為空的時是判斷的里面元素是否為空,只有當定義的時候(new)為Null才表示該集合不存在的,是空指針異常的。至於Vector集合,了解其被ArrayList代替了,其迭代方法(枚舉:Enumeration)被Iterator代替。

List接口介紹:

1、List接口是Collection接口的子類;

2、它是一個元素存取有序的集合(不是正序和倒序的,是怎么存就怎么取);

3、它是一個帶有索引的集合,通過索引就可以精確的操作集合中的元素(與數組中的索引是一個道理);

4、集合中可以有重復的元素,通過元素的equals方法,來比較是否為重復的元素;

5、常用的子類有:ArrayList集合、LinkedList集合。

List集合中常用的方法:

import java.util.ArrayList; import java.util.List; public class Demo01 { public static void main(String[] args) { List<String> list=new ArrayList<String>(); list.add("123"); list.add("abs"); //指定位置插入
        list.add(1,"456"); //刪除指定位置的元素
        String s=list.remove(1); System.out.println("刪除的元素為:"+s); //替換指定位置上的元素
        String str=list.set(0, "小明"); System.out.println("替換的元素為:"+str); //遍歷
        for(int i=0;i<list.size();i++){ System.out.println(list.get(i)); } } }

1、增加元素方法

①、 add(Object e):向集合末尾處,添加指定的元素

②、add(int index, Object e):向集合指定索引處,添加指定的元素,原有元素依次后移

2、 刪除元素刪除

①、 remove(Object e):將指定元素對象,從集合中刪除,返回值為被刪除的元素

②、 remove(int index):將指定索引處的元素,從集合中刪除,返回值為被刪除的元素

3、替換元素方法

①、set(int index, Object e):將指定索引處的元素,替換成指定的元素,返回值為替換前的元素

4、 查詢元素方法

①、 get(int index):獲取指定索引處的元素,並返回該元素

List集合存儲數據的結構:

數據存儲的常用結構:堆棧、隊列、數組、鏈表。

1、堆棧:(子彈夾)

先進后出(堆棧的入口、出口都是堆棧的頂端位置);存元素為壓棧,取元素為彈棧。

2、隊列:(過安檢)

先進先出(隊列的入口、出口各占一側)。

3、數組(長度不可變):

查找元素快(通過索引)、增刪元素慢(需要創建新的數組)。

4、鏈表(多個節點之間,通過地址進行連接):

查找元素慢(需要通過連接的節點,一次向后查找)、增刪元素快

 

 

ArrayList集合:

ArrayList集合數據存儲的結構是數組結構(適合查詢的時候用);

LinkedList集合:

LinedList集合數據存儲的結構是鏈表結構(適合增刪的時候用);

import java.util.LinkedList; public class Demo03 { public static void main(String[] args) { LinkedList<String> arr=new LinkedList<String>(); arr.addFirst("a"); arr.addFirst("b"); arr.addLast("c"); arr.addLast("d"); /*for(String s:arr){ System.out.println(s); }*/
        //獲取集合中第一個元素
        System.out.println("集合中第一個元素為:"+arr.getFirst()); //獲取最后一個
        System.out.println("集合中最后一個元素為:"+arr.getLast()); //刪除第一個
 arr.removeFirst(); arr.removeFirst(); //刪除最后一個
 arr.removeLast(); for(String s:arr){ System.out.println(s); } //集合里不為空時打印
        if(!arr.isEmpty()){ System.out.println("該集合不為空"); } } }

Vector集合

    Vector集合數據存儲的結構是數組結構,為JDK中最早提供的集合。Vector中提供了一個獨特的取出方式,就是枚舉Enumeration,它其實就是早期的迭代器。此接口Enumeration的功能與 Iterator 接口的功能是類似的。

  Vector集合已被ArrayList替代。枚舉Enumeration已被迭代器Iterator替代。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM