1近弟,show the difference between LinkedListand ArrayList
數(shù)組:1)固定長(zhǎng)度的,只能一次性設(shè)置一個(gè)固定長(zhǎng)度的值。
ArrayList:1)是一個(gè)數(shù)組隊(duì)列烈和,實(shí)現(xiàn)了基于動(dòng)態(tài)數(shù)組的數(shù)據(jù)結(jié)構(gòu)周拐,
2)隨機(jī)訪問方法get和set比linkedlist快铡俐,因?yàn)閘inkedlist需要移動(dòng)指針,
3)線程不安全妥粟,
4)上面的動(dòng)態(tài)數(shù)組機(jī)制:Arraylist先分配固定長(zhǎng)度的數(shù)組审丘,若不夠用則進(jìn)行數(shù)組擴(kuò)容,整個(gè)數(shù)據(jù)進(jìn)行一次內(nèi)存復(fù)制,system.arraycopy()勾给。
5)支持序列化滩报,即實(shí)現(xiàn)了serializable接口
LinkedList: 1)是一個(gè)雙向鏈表,實(shí)現(xiàn)了基于鏈表的數(shù)據(jù)結(jié)構(gòu)播急,不需要維護(hù)容量的大小脓钾,
2)插入和刪除數(shù)據(jù)add和remove比ArrayList快,因?yàn)锳rraylist需要移動(dòng)數(shù)據(jù)桩警。
3)線程不安全可训,
Vector:1)線程安全,支持多線程訪問,即他的函數(shù)都是支持同步的握截,但是效率低
2)是一個(gè)矢量隊(duì)列飞崖,和ArrayList一樣,實(shí)現(xiàn)了基于動(dòng)態(tài)數(shù)組的數(shù)據(jù)結(jié)構(gòu)谨胞,
3)不支持序列化
2,spring原理?
原文轉(zhuǎn)自:http://blog.csdn.net/y13530828499/article/details/6648155