当前位置: 首页 > 图灵资讯 > java面试题> 金三银四精选面试题-用过哪些Map类,都有什么区别,HashMap是线程安全的吗,并发下使用的Map是什么,他们内部原理分别是什么,比如存储方式,hashcode,扩容,默认容量等。

金三银四精选面试题-用过哪些Map类,都有什么区别,HashMap是线程安全的吗,并发下使用的Map是什么,他们内部原理分别是什么,比如存储方式,hashcode,扩容,默认容量等。

来源:图灵教育
时间:2023-11-15 09:24:12
 

用过哪些Map类,都有什么区别,HashMap是线程安全的吗,并发下使用的Map是什么,他们内部原理分别是什么,比如存储方式,hashcode,扩容,默认容量等。

有HashMap、HashTable、LinkedHashMap、TreeMap

在Map中插入,删除,定位元素:HashMap

要按照自定义顺序或自然顺序遍历:TreeMap

要求输入顺序和输出顺序相同:LinkedHashMap

从内部数据结构分析:

  • HashMap 数组+链表/红黑树
  • HashTable 数组+链表
  • LinkedHashMap 双向链表
  • TreeMap 红黑树

从线程安全分析:

  • HashMap 非线程安全
  • HashTable 线程安全的
  • LinkedHashMap 非线程安全
  • TreeMap 非线程安全的