Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Java 集合类 #13

@zhangsr

Description

@zhangsr

基础

常用分类:

  • List:ArrayList、LinkedList、Vector、Stack
  • Set:HashSet、LinkedHashSet、TreeSet
  • Map:HashMap、LinkedHashMap、TreeMap、HashTable

特点:

  • List:有序可重复
  • Set:不可重复
  • Map:键值对

List:

  • ArrayList:可变长数组
  • LinkedList:链表实现,插入删除效率高
  • Vector:线程安全的 ArrayList
  • Stack:Vector 的子类,多了堆栈操作的方法,方便

Set:

  • HashSet:为快速查找而生,基于 HashMap
  • LinkedHashSet:有序 HashSet,按插入顺序排列
  • TreeSet:有序 HashSet,按值排列

Map

  • HashMap:键值对结构
  • LinkedHashMap:有序 HashMap,按插入顺序排列
  • TreeMap:有序 HashMap,按值排列
  • HashTable:线程安全的 HashMap

选择流程图:

Tips

遍历:

  • for(int i; i < size; i++):效率低,每次通过get(i)获取都是O(n)
  • for(Object obj : objectList)
  • while (iteraotr.hasNext())

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions