JAVA面試【JAVA容器系列-1-17】【更新於2019/05/19】

1. java 容器都有哪些?

   答:java的容器主要分爲兩個部分collection(集合序列)和map<鍵值對>

   collection(集合序列):List  -->  ArrayList、LinkedList、Vectory、Stack

                                      Set  -->  HashSet、SortedSet、TreeSet

                                      Queue  -->  Deque、PriorityQueue

   Map<鍵值對>:SortedMap、ThreeMap、Hashtable、HashMap、LinkedHashMap、WeakHashMap

java.util.Collection [I]
    +--java.util.List [I]
       +--java.util.ArrayList [C]    
       +--java.util.LinkedList [C]  
       +--java.util.Vector [C]    //線程安全
          +--java.util.Stack [C]  //線程安全
    +--java.util.Set [I]                   
       +--java.util.HashSet [C]      
       +--java.util.SortedSet [I]    
          +--java.util.TreeSet [C]    
    +--Java.util.Queue[I]
        +--java.util.Deque[I]   
        +--java.util.PriorityQueue[C]  
java.util.Map [I]
    +--java.util.SortedMap [I]
       +--java.util.TreeMap [C]
    +--java.util.Hashtable [C]   //線程安全
    +--java.util.HashMap [C]
    +--java.util.LinkedHashMap [C]
    +--java.util.WeakHashMap [C]

2. Collection 和 Collections 有什麼區別?

  答:一看到這裏,博主我一開始也是懵的狀態,以前只知道collection,怎麼現在出現了collections,然後就去查,然後是這樣理解的,collection是集合,collections是一個普通的JAVA類,可以理解成collection是ADC,而collections是ADC的輔助,collections裏面是靜態方法,在我們需要使用到裏面的方法時,可以直接使用。

3. List、Set、Map 之間的區別是什麼?

4. HashMap 和 Hashtable 有什麼區別?

5. 如何決定使用 HashMap 還是 TreeMap?

6. 說一下 HashMap 的實現原理?

7. 說一下 HashSet 的實現原理?

8. ArrayList 和 LinkedList 的區別是什麼?

9. 如何實現數組和 List 之間的轉換?

10. ArrayList 和 Vector 的區別是什麼?

11. Array 和 ArrayList 有何區別?

12. 在 Queue 中 poll()和 remove()有什麼區別?

13. 哪些集合類是線程安全的?

14. 迭代器 Iterator 是什麼?

15. Iterator 怎麼使用?有什麼特點?

16. Iterator 和 ListIterator 有什麼區別?

17. 怎麼確保一個集合不能被修改?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章