邹瑞20201008

总结

java.util.LinkedList

public class LinkedList

extends AbstractSequentialList

implements List, Deque, Cloneable, Serializable

继承关系图:

常用方法

使用链表增删效率高;数组查找效率高

数组内存空间连续,链表不连续

推荐使用数组

java.util.Map

Map 接口不是 Collection 的子类,使用键、值映射表来存储

public interface Map<K,V

注意

  1. Map 不能有重复的键(覆盖),每个键可以映射到多一个值
  2. 允许将映射内容视为一组键,值集合或键值映射集合
  3. key 不要求有序, value 也不要求有序,但可以重复
  4. 当使用对象作为 key 时,要重写 equals 和 hashCode 方法

抽象方法

Map 的实现类较多,在此我们关注 HashMap 、 TreeMap 、 HashTable 、 LinkedHashMap

TreeMap

public class TreeMap

extends AbstractMap

implements NavigableMap, Cloneable, Serializable

  1. 继承 AbstractMap ,一个红黑树基于 NavigableMap 实现
  2. 非线程安全的
  3. key 不能存 `null ,但是 value 可以存 null
  4. key 必须是可比较的

Hashtable

public class Hashtable

extends Dictionary

implements Map, Cloneable, Serializable

  1. 该类实现了一个哈希表,它将键映射到值
  2. 不允许 null 作为键和值
  3. 初始容量( initialCapacity )为 11 ,负载因子( loadFactor )为 0.75f
  4. 线程安全的
  5. 不保证顺序
  6. 扩容方式是旧容量的2倍 +1
  7. 数组 + 链表

心得

深层东西听不太懂,只能先慢慢背,但知道如何去用,只能后面慢慢用的时候理解了。

标签

评论

this is is footer