惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
Last Week in AI
Last Week in AI
博客园_首页
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 叶小钗
大猫的无限游戏
大猫的无限游戏
人人都是产品经理
人人都是产品经理
V
Visual Studio Blog
宝玉的分享
宝玉的分享
博客园 - Franky
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
月光博客
月光博客
T
Tailwind CSS Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
量子位
博客园 - 聂微东
S
SegmentFault 最新的问题
博客园 - 司徒正美
罗磊的独立博客
V
V2EX
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
美团技术团队
小众软件
小众软件
Jina AI
Jina AI

6Jyc5p+a

【笔记】HermesAgent学习笔记 【笔记】DeepSeekHarness学习笔记 【笔记】Rollup的PluginBabel插件 【笔记】Rollup学习笔记 【笔记】Gulp的BrowserSync插件 【笔记】Node-SSH学习笔记 【笔记】Tapable学习笔记 【笔记】Highlight.js学习笔记 【笔记】Marked学习笔记 【笔记】Webpack通过schema-utils实现Loader参数校验 【笔记】Webpack实现TreeShaking 【笔记】Webpack的WebpackBundleAnalyzer插件 【代码】校验信用卡号码 【笔记】Webpack的SpeedMesureWebpackPlugin插件 【笔记】Codex配置Brave浏览器的MCP 【笔记】Webpack的CSSMinimizerWebpackPlugin插件 【笔记】FastNodeManager学习笔记 【笔记】Terser学习笔记 【笔记】Codex配置Wireshark的MCP 【笔记】Codex配置Unity的MCP 【笔记】Codex配置Blender的MCP 【笔记】Codex配置IDEA的MCP 【笔记】Browserslist学习笔记 【笔记】Codex学习笔记 【笔记】MicrosoftStore微软商店学习笔记 【笔记】通过NapCat和AstrBot实现QQ机器人 【笔记】部署NapCat 【笔记】部署AstrBot 【笔记】Poetry学习笔记 【笔记】uv学习笔记
【笔记】Java的PriorityQueue和PriorityBlockingQueue
6Jyc5p+a · 2026-06-19 · via 6Jyc5p+a

前言

Java的PriorityQueue和PriorityBlockingQueue学习笔记

继承

graph TD
  Object --> AbstractCollection
  AbstractCollection --> AbstractQueue
  AbstractQueue --> PriorityBlockingQueue
  AbstractQueue --> PriorityQueue

  Iterable --> Collection
  Collection --> AbstractCollection

  Collection --> Queue
  Queue --> AbstractQueue

  style Object fill:#f0f8ff,stroke:#696969
  style AbstractCollection fill:#f0f8ff,stroke:#696969
  style AbstractQueue fill:#f0f8ff,stroke:#696969
  style PriorityBlockingQueue fill:#f0f8ff,stroke:#696969
  style PriorityQueue fill:#f0f8ff,stroke:#696969

  style Iterable fill:#f0f8ff,stroke:#4169e1
  style Collection fill:#f0f8ff,stroke:#4169e1

  style Queue fill:#f0f8ff,stroke:#4169e1
  • 底层维护排序顺序,遍历时不一定是按照排序顺序遍历,但是连续出队列时一定拿到的是有序的结果

创建对象

1
PriorityQueue<Object> queue = new PriorityQueue<>();

基于已有集合创建

1
2
3
Collection<Object> c;

PriorityQueue<Object> queue = new PriorityQueue<>(c);

PriorityBlockingQueue

  • PriorityBlockingQueue是线程安全的PriorityQueue

创建对象

1
PriorityBlockingQueue<Object> queue = new PriorityBlockingQueue<>();

基于已有集合创建

1
2
3
Collection<Object> c;

PriorityBlockingQueue<Object> queue = new PriorityBlockingQueue<>(c);

Collection的相关方法

传送门

Queue的相关方法

传送门

完成