【Java】集合.基本初识

文章目录 集合.基本初识一、Collection二、Map 集合.基本初识 对于之后的一些小案例都未涉及到泛型,学到之后会进行补充 常用的集合分为两接口,

文章目录

  • 集合.基本初识
    • 一、Collection
    • 二、Map


集合.基本初识

对于之后的一些小案例都未涉及到泛型,学到之后会进行补充
常用的集合分为两接口,Collection 与 Map

一、Collection

Collection又分为 ListSet 两类接口

1. List:

  • ArrayList:线性结构数组,数据可重复,线程不安全。 优点:查询元素速度快;缺点:增删元素速度慢。
  • LinkedList:链式结构双向链表,数据可重复,线程不安全。优点:增删元素速度快,查询元素速度慢。
  • Vector:线性结构数组,数据可重复,线程安全。优点:线程安全。缺点:效率低。(不常用)

2. Set:

  • HashSet:底层数组,数据不可重复、乱序,线程不安全,优点查询速度快。
  • LinkedHashSet:底层是链表+哈希表算法,数据不重复,有序,线程不安全。链表保证添加顺序,哈希表保证不重复。
  • TreeSet:底层红黑树,数据不重复,有序,线程不安全。

在这里插入图片描述
对于单向链表与双向链表的说明:
在这里插入图片描述
在这里插入图片描述
返回顶部


二、Map

Map是结构(key-value),其中key不可重复,value可以重复。

  • HashMap:底层数组 + 链表 + 红黑树。无序,线程不安全。(通常环境)
  • Hashtable:线程安全效率较低。(不常用)
  • TreeMap:红黑树算法,key按照自然顺序排序。(有选择环境)
  • LinkedHashMap:底层链表加哈希算法。key保证添加顺序。
  • properties:Hashtable的子类,要求key与value都是String。

在这里插入图片描述
返回顶部