java知識點彙總之四容器

2021-05-22 14:54:48 字數 1487 閱讀 1262

list,queue

,set

繼承於colletion

,而colletion

繼承於iterable

list

:以特定順序儲存一組元素,實現

list

介面有:

arraylist

:長於隨機訪問元素,但是在

list

中插入和移除元素比較慢

linkedlist

:在list

中插入和移除元素比較快,提供了優化的順序訪問,不長於隨機訪問元素。

queue

:先進先出,多用於併發程式設計。

priorityqueue:

乙個基於優先順序堆的無界優先順序佇列。

stack後進

先出,方法有:

peek()

檢視堆疊頂部的物件,但不從堆疊中移除它。

pop()

移除堆疊頂部的物件,並作為此函式的值返回該物件。

push(e item)

把項壓入堆疊頂部

set:鍵值對。實現

set介面有:

linkedhashset

:具有hashset的查詢速度,按照被新增的順序儲存物件。存入linkedhashset

的元素必須定義hashcode()。

treeset

:按照比較結果的公升序儲存物件,使用紅

-黑樹資料結構。存入treeset的元素必須實現comparable介面。

hashset

:查詢速度最快

,無序儲存物件,使用雜湊函式。存入hashset的元素必須定義hashcode()。

sortedset:按照物件的比較函式對元素排序。

map:

linkedhashmap

:按照被新增的順序或最近最少使用儲存物件,迭代訪問時速度更快。

treemap

:按照比較結果的公升序儲存物件。方法submap,可以返回乙個子樹。

hashmap

:查詢速度最快

,無序儲存物件。

sortedmap:按照物件的比較函式對元素排序。

collections.addall

()方法接受乙個

collection

物件,以及乙個陣列或乙個用逗號分隔的列表(使用可變引數)。

collection.addall

()方法接受乙個

collection

物件。arrays.aslist

()方法接受乙個陣列或乙個用逗號分隔的列表(使用可變引數),表面是

list

,底層其實是陣列,故不能調整其大小,不能使用

add或

delete

迭代器有兩種:

listiterator

:雙向移動

iterator

:向前移動

開啟Vue知識點彙總之路(二)

v for通常都是對一組列表資料進行渲染。迭代陣列 v for item in list v for item,i in list i為陣列索引 迭代物件 迭代數字 in後可加普通陣列,物件陣列,單個物件,也可加數字,計數從1開始 eg v for count in 10 迴圈十次,從1開始計數 注...

vector 容器知識點彙總

一 vector定義 向量 vector 是乙個封裝了動態大小陣列的順序容器。簡單來說,就是可以定義乙個任意大小的陣列,其中包含各種使用的函式操作,故在程式設計時一般使用vector容器來定義陣列。vector a 定義乙個一維int型別陣列 vector a 3,1 定義乙個陣列的最大容量為3,並...

C C 零散知識點彙總之緩衝區

緩衝區是為了讓低速的輸入輸出裝置和高速的使用者程式能夠協調工作,並降低輸入輸出裝置的讀寫次數。使用者程式的執行速度可以看做cpu的允許速度,如果沒有各種硬體的阻礙,理論上它們是同步的。例如,我們都知道硬碟的速度要遠低於cpu,它們之間有好幾個數量級的差距,當向硬碟寫入資料是,程式需要等到,不能做任何...