8.常用容器

8.1 List

接口:java.util.List<>
实现:

  • java.util.ArrayList<>:变长数组
  • java.util.LinkedList<>:双链表
    函数:
  • add(): 在末尾添加一个元素
  • clear(): 清空
  • size(): 返回长度
  • isEmpty(): 是否为空
  • get(i): 获取第i个元素
  • set(i,val): 将第i个元素设置为val

8.2栈

类:java.util.Stack<>
函数:

  • push(): 压入元素
  • pop():弹出栈顶元素,并返回栈顶元素
  • peek():返回栈顶元素
  • size():返回长度
  • empty():栈是否为空
  • clear():清空

8.3 队列

接口: java.util.Queue<>
实现:

  • java.util.LinkedList<>: 双链表
  • java.util.PriorityQueue<>:优先队列

默认是小根堆,大根堆写法:`new PriorityQueue<>(Collections.reverseOrder())

函数:

  • add():在队尾添加元素
  • remove():删除并返回队头
  • isEmpty():是否为空
  • size():返回长度
  • peek():返回队头
  • clear():清空

8.3 Set

接口: java.util.Set<K>
实现:

  • java.util.HashSet<K>:哈希表
  • java.util.TreeSet<K>:平衡树
    函数:
  • add():添加元素
  • contains():是否包含某个元素
  • remove():删除元素
  • isEmpty():是否为空
  • clear():清空
    java.util.TreeSet 多的函数:
  • ceiling(key):返回大于等于key的最小元素,不存在则返回null
  • floor(key):返回小于等于key的最大元素,不存在则返回null

8.5 Map

接口:java.util.Map<K,V>
实现:

  • java.util.HashMap<K,V>:哈希表
  • java.util.TreeMap<K,V>:平衡树
    函数:
  • put(key,value) :添加关键字和其对应的值
  • get(key): 返回关键字对应的值
  • containsKey(key):是否包含关键字
  • remove(key):删除关键字
  • size()返回元素数
  • isEmpty():是否为空
  • clear():清空
  • entrySet() :获取Map中的所有对象的集合
  • Map.Entry<K,V>:Map中的对象类型
    • getKey():获取关键字
    • getValue():获取值
      java.util.TreeMap<K,V>多的函数:
    • celingEntry(key):返回大于等于key的最小元素,不存在则返回null
    • floorEntry(key):返回小于等于key的最大元素,不存在则返回null
posted @ 2024-08-03 00:03  Lefulann  阅读(14)  评论(0)    收藏  举报