文章目录
- Java集合中各种数据结构的方法汇总
- [数组 ArrayList 、LinkedList](#数组 ArrayList 、LinkedList)
- [链表 LinkedList](#链表 LinkedList)
- [栈 Stack](#栈 Stack)
- [队列 ArrayQueue、LinkedList](#队列 ArrayQueue、LinkedList)
- [哈希表 HashMap](#哈希表 HashMap)
- [堆 PriorityQueue](#堆 PriorityQueue)
Java集合中各种数据结构的方法汇总
获取大小:fun.size();
判断是否为空:fun.isEmpty();
数组 ArrayList 、LinkedList
增加:add(int index, E element)
删除:remove(int index)
remove(Object o)
修改:set(int index, E element)
查看:get(int index)
链表 LinkedList
增加:addFirst(E e)
、 addLast(E e)
、offer(E e)
、 offerFirst(E e)
、offerLast(E e)
删除:poll()
、pollFirst()
、pollLast()
(<---推荐使用,JDK1.6以后新出的方法,提高代码的健壮性) removeFirst()
、removeLast()
查看:element()
、getFirst()
、getLast()
、indexOf(Object o)
、lastIndexOf(Object o)
、peek()
、peekFirst()
、peekLast()
栈 Stack
入栈:stack.push(value)
出栈:stack.pop()
获取栈顶元素:stack.peek()
队列 ArrayQueue、LinkedList
入队:queue.add(); queue.addLast(); queue.offer(); queue.offerLast();
出队:queue.poll; queue.pollFirst(); queue.remove(); queue.removeFirst();
获取队头元素:queue.peek(); queue.peekFirst(); queue.getFirst();
获取队尾元素:queue.peekLast(); queue.getLast();
哈希表 HashMap
添加:map.put(key, value);
获取值:map.get(key)
移除:map.remove(key);
判断键是否存在:map.containsKey(key);
获取键的集合:Set<T> keySet = map.keySet();
获取键值对的集合:Set<Map.Entry<T,T>> entries = map.entrySet();
堆 PriorityQueue
小顶堆的创建:Queue<T> heap = new PriorityQueue<>();
大顶堆的创建:Queue<T> heap = new PriorityQueue<>((o1, o2) -> (o2 - o1));
添加元素:heap.add(); heap.offer();
删除堆顶元素:heap.poll(); heap.remove();
获取堆顶元素:heap.peek(); heap.element();
判断是否包含指定元素:heap.contains(value);