【Java集合中各种数据结构的方法汇总】

文章目录

  • 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);

相关推荐
2301_803554527 分钟前
正向代理,反向代理,负载均衡还有nginx
java·nginx·负载均衡
要开心吖ZSH9 分钟前
软件设计师备考-(十六)数据结构及算法应用(重要)
java·数据结构·算法·软考·软件设计师
罗光记12 分钟前
Anthropic 支持加州 AI 安全法案
经验分享·百度·oneapi·twitter·segmentfault
幂律智能14 分钟前
吾律——让普惠法律服务走进生活
人工智能·经验分享
向上的车轮17 分钟前
基于Java Spring Boot的云原生TodoList Demo 项目,验证云原生核心特性
java·spring boot·云原生
程序员清风19 分钟前
快手一面:为什么要求用Static来修饰ThreadLocal变量?
java·后端·面试
逍遥德20 分钟前
Java8 Comparator接口 和 List Steam 排序使用案例
java·spring boot·list·排序算法
前行的小黑炭38 分钟前
Android :如何快速让布局适配手机和平板?
android·java·kotlin
草莓熊Lotso40 分钟前
【C++】递归与迭代:两种编程范式的对比与实践
c语言·开发语言·c++·经验分享·笔记·其他
zhong liu bin2 小时前
MySQL数据库面试题整理
数据结构·数据库·mysql