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

相关推荐
lizhou8286 分钟前
win10下使用docker、k8s部署java应用
java·docker·kubernetes
程序员阿鹏1 小时前
ArrayList 与 LinkedList 的区别?
java·开发语言·后端·eclipse·intellij-idea
18你磊哥1 小时前
java重点学习-JVM类加载器+垃圾回收
java·jvm
聂 可 以1 小时前
在SpringBoot项目中利用Redission实现布隆过滤器(布隆过滤器的应用场景、布隆过滤器误判的情况、与位图相关的操作)
java·spring boot·redis
长安初雪1 小时前
Java客户端SpringDataRedis(RedisTemplate使用)
java·redis
aloha_7891 小时前
B站宋红康JAVA基础视频教程(chapter14数据结构与集合源码)
java·数据结构·spring boot·算法·spring cloud·mybatis
尘浮生2 小时前
Java项目实战II基于Java+Spring Boot+MySQL的洗衣店订单管理系统(开发文档+源码+数据库)
java·开发语言·数据库·spring boot·mysql·maven·intellij-idea
临沂堇2 小时前
CCF刷题计划——训练计划(反向拓扑排序)
数据结构·c++·算法·拓扑·ccf
铁匠匠匠2 小时前
【C总集篇】第八章 数组和指针
c语言·开发语言·数据结构·经验分享·笔记·学习·算法
猿饵块2 小时前
cmake--get_filename_component
java·前端·c++