list用法示例詳解

2021-07-25 19:03:51 字數 2090 閱讀 5478

|--list:元素是有序的(怎麼存的就怎麼取出來,順序不會亂),元素可以重複(角標1上有個3,角標2上也可以有個3)因為該集合體系有索引,

|-- arraylist:底層的資料結構使用的是陣列結構(陣列長度是可變的百分之五十延長)(特點是查詢很快,但增刪較慢)執行緒不同步

|-- linkedlist:底層的資料結構是鍊錶結構(特點是查詢較慢,增刪較快)

|-- vector:底層是陣列資料結構 執行緒同步(陣列長度是可變的百分之百延長)(無論查詢還是增刪都很慢,被arraylist替代了)

list:特有的方法,凡是可以操作角標的方法都是該體系特有的方法

增複製**

**如下:

boolean add(int index, e element)

boolean addall(index,collection)

複製**

**如下:

public static void list_add()

刪除指定位置的元素

複製**

**如下:

boolean remove(int index)

複製**

**如下:

public static void list_remove()

修改指定角標的元素  set(int index, e element)  返回的是修改的那個元素

複製**

**如下:

public static void list_set() 查

複製**

**如下:

get(int index)   返回列表中指定位置的元素

sublist(int fromindex, int toindex)    返回列表中指定的 fromindex(包括 )和 toindex(不包括)之間的部分元素。

複製**

**如下:

public static void list_get()

list集合特有的迭代器:listiterator(是iterator的子介面)

注意:在迭代時,是不可以通過集合物件的方法操作集合中的元素

因為會發生concurrentmodificationexception異常(併發異常)

所以,在迭代器時,只能用迭代器的方法造作元素

因為iterator方法是有限的所以只能對元素進行判斷,取出,刪除的操作

如果想要其他的操作如新增,修改等,就需要使用其子介面,listiterator

該介面只能通過list集合的listiterator方法獲取

複製**

**如下:

public class listiteratordemo

*/   

//只有list的listiterator有增,刪,改,查這些功能,因為只有list有索引

listiterator li = a1.listiterator();

while (li.hasnext())   }}

vector:列舉就是vector特有的取出方式,跟迭代器很像(其實列舉和迭代是一樣的) 已經被迭代器取代

複製**

**如下:

public class vectordemo }

}linkedlist:

特有方法:  

addfirst();在頭部新增元素      addlast();在尾部新增元素

getfirst(); getlast(); 獲取元素但不刪除元素。如果集合中沒有元素,會出現nosuchelementexception

removefirst();   removelast(); 獲取元素但是刪除元素。如果集合中沒有元素,會出現nosuchelementexception

在jdk1.6出現了替代方法

offerfirst(); offerlast();

peekfirst(); peeklast(); 獲取元素,但是元素不被刪除。如果集合中沒有元素,會返回null

pollfirst(); polllast(); 獲取元素,但是元素被刪除。如果集合中沒有元素,會返回null

複製**

**如下:

public class linkedlistdemo }

}

C 中list用法詳解

1.關於list容器 list是一種序列式容器。list容器完成的功能實際上和資料結構中的雙向鍊錶是極其相似的,list中的資料元素是通過鍊錶指標串連成邏輯意義上的線性表,也就是list也具有鍊錶的主要優點,即 在鍊錶的任一位置進行元素的插入 刪除操作都是快速的。list的實現大概是這樣的 list...

STL學習之七 list用法示例

本文介紹stl中的list的用法示例。下面是list的知識點 1 list 是乙個雙向鍊錶容器 可以高效的進行插入與刪除 不可以隨機儲存元素 不支援at.pos 函式和操作符 2 list 的迭代器 可以 但不可以 it 3 3 list 結點序號從0號位置開始 4 list 的插入 當指標指向 插...

STL之四 list用法詳解

相對於vector容器的連續線性空間,list是乙個雙向鍊錶,它有乙個重要性質 插入操作和刪除操作都不會造成原有的list迭代器失效,每次插入或刪除乙個元素就配置或釋放乙個元素空間。也就是說,對於任何位置的元素插入或刪除,list永遠是常數時間。常用函式 listc 建立乙個空的list listc...