天天看點

ArrayList.LinkedList.Vector三者之間的差別與聯系

            以前面試的時候經常會碰到這樣的問題.,叫你寫一下ArrayList.LinkedList.Vector三者之間的差別與聯系:原先一直搞不明白,不知道這三者之間到底有什麼差別?哎,慚愧,基礎太差啊,木有辦法啊

ArrayList.LinkedList.Vector三者之間的差別與聯系

        現在得去說說這三者之間的差別與聯系了:這三者都是實作了List接口,都擁有List接口裡面定義的方法,并且同時擁有Collection接口的方法;

        ArrayList:采用的是數組的方式進行存儲資料的,查詢和修改速度快,但是增加和删除速度慢;線程是不同步

        LinkedList:采用的是連結清單的方式進行存儲資料的,查詢和修改速度慢,但是增加和删除速度快

        Vector:也采用的是數組的方式進行存儲的,Vector在java1.0以前用,但是ArrayList是在java1.2版本後使用的,線程是同步的,效率相比ArrayList來說慢一點;同時Vector查詢資料有疊代器,有枚舉,有get(int index),有indexOf(int index)四種方式,而ArrayList卻沒有枚舉