集合中List和Set

2021-07-09 07:03:40 字數 1971 閱讀 1755

collection介面有兩個子介面: list(列表),set(集)

list:可存放重複元素,元素訪問是有序的。

set:不可以存放重複元素,元素訪問是無序 的

list集合中常用的類

vector:執行緒安全,但速度慢,已被 arraylist 替代。

arraylist:執行緒不安全,查詢速度快。

linkedlist:鍊錶結構,增刪速度快。

取出list集合中元素的方式: get(int index)通過腳標獲取元素。

iterator():通過迭代方法獲取迭代器物件

集合框架-list集合的常見方法

public

class collection08_1

private

static

void

show(list list)

}

集合框架-listiterator介面

public

class

collection09_1 else

}system.out.println("previous:"+it.previous());

/* iterator it=list.iterator();

while(it.hasnext())else

}system.out.println(list);

//在迭代器過程中,不要使用集合操作元素,容易報異常

//可以使用iterator介面的子介面listiterator來完成在迭代中對元素進行更多的操作

*/ }

private

static void show(list

list)

//list的特有取去方式元素的方式之一

for(int x=0;x}

}

collection

|--list:有序(存入和取出的順序一致),元素都有索引(角標),元素可以重複。

|--set:元素不可以重複,無序。

list:特有的常見方法:有乙個共性特點就是都可以操作角標。

1.新增

void add(index,element);

void add(index,collection);

2.刪除

object remove(index);

3.修改

object set(index,element);

4.獲取

object get(index);

int indexof(object);

int lastindexof(object);

list sublist(from,to);

list集合是可以完成對元素的增刪改查。

list:

|--vector:內部是資料資料結構,是同步的。增刪,查詢都很慢

|--arraylist:內部是資料資料結構,是不同步的。替代了vector。查詢的速度快。

|--linkedlist:內部是鍊錶資料結構,是不同步的。增刪元素的速度非常快。

linkedlist:

addfirst();

addlast();

jdk1.6

offerfirst();

offerlast();

getfirst();//獲取但不移除,如果鍊錶為空,丟擲nosuchelementexception

getlast();

jdk1.6

peekfirst;//獲取但不移除,如果鍊錶為空,返回null.

removelast();

jdk1.6

pollfirst();//獲取並移除,如果鍊錶為空,返回null.

poolast();

List集合 Set集合

一 請簡述list介面的特點。v 它是乙個元素訪問有序的集合。例如,存元素的順序是11 22 33。那麼集合中,元素的儲存就是按照11 22 33的順序完成的 v 它是乙個帶有索引的集合,通過索引就可以精確的操作集合中的元素 與陣列的索引是乙個道理 v 集合中可以有重複的元素,通過元素的equals...

集合框架 List與Set

所有的集合框架並不存放真正的物件,而是持有物件的引用 list與set都繼承自collection list的實現類 arraylist,linklist,vector set的實現類 hashset,linkedhashset,sortset 介面 treeset 實現sortset 首先介紹一下...

python的列表list和集合set操作

以下是一些python的list和set的基本操作 1.list的一些操作 list 1,2,3 print list list.extend 7,8 extend是將可迭代物件的元素依次加入列表 print list print list list.reverse 元素翻轉,注意不能將這個操作賦給...