多年開發經驗總結的Java面試題——(四)

2020-08-14 20:00:43

1、Java陣列和鏈表的兩種結構的操作效率

陣列效率高,陣列底層是一個連續的記憶體空間,根據基地址和偏移量計算地址的;

鏈表的數據是通過地址指向下一個數據地址找到的;

(更多面試題推薦:)

2、Java的參照型別有哪幾種?

強參照、弱參照、軟參照、虛參照

3、ArrayList、Vector、LinkedList的儲存效能和特性

ArrayList是以陣列形式儲存物件,因爲它是存放在連續位置上,插入和刪除麻煩,但查詢效率高,連續的陣列有序的可以根據索引查詢;

(相關教學推薦:)

LinkedList將物件儲存在獨立的空間,每個空間保留了下一個鏈接的索引,查詢效率低,但修改、刪除效率高

Vector使用了Synchronized方法(執行緒安全的),效能低於ArrayList

4、List、Set、Map是否繼承自Collection介面?

List,Set是,Map不是

5、List、Map、Set三個介面存取元素時,各有什麼特點?

(視訊教學推薦:)

List允許數據重複,有序的,呼叫get(index i)來明確說明取第幾個。

Set不允許重複數據,內部有排序,只能以Iterator介面取得所有的元素,再逐一遍歷各個元素。

Map是通過鍵值對儲存數據,鍵唯一的,相同數據會覆蓋,用get(Object key)方法根據key獲得相應的value。

以上就是多年開發經驗總結的Java面試題——(四)的詳細內容,更多請關注php中文網其它相關文章!