首先Vector是從JDK1.2就提供的list的實現(xiàn),Vector和ArrayList一樣,也是基于數(shù)組來實現(xiàn)的

創(chuàng)建一個大小為10的數(shù)組,并賦值給elementData對象,并將capacityIncrement設(shè)置為0

Vector中的add方法增加了synchronized關(guān)鍵字,因此此方法是線程安全的,除此之外他和ArrayList基本相同,不同點為當數(shù)組大小不夠用的時候,擴增策略不同(如果capacityIncrement大于0,則將Objec數(shù)組的待續(xù)哦啊擴大為現(xiàn)在size上加上capacityIncrement的值,如果capacityIncrement等于小于0,則將Object數(shù)組的大小夸大為現(xiàn)有size的兩倍)

除了其調(diào)用的removeElement方法上有synchronized關(guān)鍵字外,和arrayList完全相同
出了方法上有syhchronized關(guān)鍵字,實現(xiàn)和ArrayList相同
和ArrayList完全相同
和ArrayList唯一不同就是indexOf方法上有synchronized關(guān)鍵字
Vector是基于synchronized實現(xiàn)的線程安全的ArrayList,擴增方式和ArrayList稍微有些不同,可通過傳入capacityIncrement來控制容量的擴充
新聞熱點
疑難解答