ArrayList和linkedList的區(qū)別
Array(數(shù)組)是基于索引(index)的數(shù)據(jù)結(jié)構(gòu),它使用索引在數(shù)組中搜索和讀取數(shù)據(jù)是很快的。
Array獲取數(shù)據(jù)的時(shí)間復(fù)雜度是O(1),但是要?jiǎng)h除數(shù)據(jù)卻是開(kāi)銷很大,因?yàn)檫@需要重排數(shù)組中的所有數(shù)據(jù), (因?yàn)閯h除數(shù)據(jù)以后, 需要把后面所有的數(shù)據(jù)前移).
缺點(diǎn): 數(shù)組初始化必須指定初始化的長(zhǎng)度, 否則報(bào)錯(cuò).
例如:

List—是一個(gè)有序的集合,可以包含重復(fù)的元素,提供了按索引訪問(wèn)的方式,它繼承Collection。
List有兩個(gè)重要的實(shí)現(xiàn)類:ArrayList和LinkedList
ArrayList: 可以看作是能夠自動(dòng)增長(zhǎng)容量的數(shù)組
ArrayList的toArray方法返回一個(gè)數(shù)組
ArrayList的asList方法返回一個(gè)列表
ArrayList底層的實(shí)現(xiàn)是Array, 數(shù)組擴(kuò)容實(shí)現(xiàn)
LinkList是一個(gè)雙鏈表,在添加和刪除元素時(shí)具有比ArrayList更好的性能.但在get與set方面弱于ArrayList.當(dāng)然,這些對(duì)比都是指數(shù)據(jù)量很大或者操作很頻繁。