集合

  • 集合:单例、双例

    • 单例:

    Interable(接口): 获得迭代器,从而使用增强for循环

    Collection(接口): 集合(有序集合、无序集合)

      **List**(接口):有序集合
    
      		**ArrayList**(类)、 **LinkedList**(类)、**Vector**(类)
    
      **set**(接口):无序集合
    
    • 双例:

      Map 接口

      **HshMap** 类、**LinkedHashMap** 类、**Hashtable** 类
      

如图所示:
Java中的集合

#### List 接口

- List接口表示有序集合,每一个元素都有索引号

- 值可以重复,且可为null

  ##### ArrayList集合

  - 底层采用`数组结构`
  - *特点*: 添加、删除慢,查询快。

  ##### LinkedList集合

  - 底层采用`链表结构`
  - *特点*: 添加、删除快,查询慢

  ##### Vector集合(了解即可)

  - 线程安全

  - JDK1.0 老版本集合


#### Set接口

- 无序集合,值不能重复
- 无顺序,无索引号

#### Map接口

- Map是双例集合,以键值对存储(key/value)。

- Map特点:Key不能重复,value可以重复

  **HashMap:**

  - 基于hash表Map实现
  - 非线程安全
  - 性能高
  - `底层采用链表+数组结构`

  **LinkedHashMap:**

  - `底层采用链表`
  - 在HashMap基础上,使用没有差异

  **Hashtable:**

  - 线程安全
  - 不支持null为键或值
  - 性能低‘
  - 老版本实现已经被HashMap替代

相关文章:

猜你喜欢
  • 2021-12-05
  • 2021-06-05
相关资源
相似解决方案