当前位置: 首页 > news >正文

Java 集合

Java 集合

  • 前言
  • 两大顶层接口
  • 集合常用遍历方式
  • 总结

前言

Java集合是日常开发使用频率最高的API,几乎所有业务数据的存储、传输、处理都离不开它。吃透集合的底层原理和选型技巧,是提升代码质量、规避线上bug的关键。


两大顶层接口

Java集合属于java.util包,核心分为Collection和Map两大派系,所有集合实现类都基于这两个顶层接口扩展。

  1. Collection 单列集合(存单个元素)
    用于存储单个独立元素,包含三大核心子接口:
  • List(有序、可重复、有索引):元素存入顺序和取出顺序一致,支持通过索引精准获取元素,允许元素重复。
  • Set(无序、不可重复、无索引):元素无序存储,自动去重,没有索引,无法通过下标取值。
  • Queue(队列、有序、可重复):遵循先进先出规则,多用于消息队列、任务排队场景。
  1. Map 双列集合(存键值对)
    存储 key-value 键值对数据,键唯一不可重复,值可以重复,主要用于映射关系存储(比如用户ID对应用户信息)。

集合常用遍历方式

  1. 普通for循环(仅List)
    基于索引遍历,支持遍历中修改元素
List<String>list=newArrayList<>();for(inti=0;i<list.size();i++){System.out.println(list.get(i));}
  1. 增强for循环(推荐,通用)
    语法简洁,适用所有Collection集合,不支持遍历中增删元素(会报并发修改异常)
for(Strings:list){System.out.println(s);}
  1. 迭代器Iterator(支持遍历删除)
    唯一支持遍历过程中安全删除元素的方式,适配所有集合
Iterator<String>it=list.iterator();while(it.hasNext()){Strings=it.next();if("test".equals(s)){it.remove();// 安全删除}}
  1. Lambda表达式遍历
    代码简洁,适合简单遍历场景
List<String>nameList=Arrays.asList("张三","李四","张三丰","王五");nameList.stream().filter(name->name.length()>2).forEach(System.out::println);

总结

Java集合的核心学习重点就是底层结构、特性差异、场景选型。不用死记硬背源码细节,但必须清楚不同集合的优缺点和适用场景,这是写出高效、稳定代码的基础。

http://www.jsqmd.com/news/1092986/

相关文章:

  • 【.NET新特性·第6篇】C# 13 新特性全解:10 个改变你编码方式的特性
  • 从零逆向sig3签名算法:纯算分析实战与移动应用安全机制解析
  • 我发现......Data Agent 正在续写 GPS 导航的故事
  • 《深入理解计算机系统》CSAPP八大实验通关指南与实战解析
  • 终极解放!U校园智能刷课工具AutoUnipus:2分钟完成网课必修题
  • 凑微分,幂等公式
  • 【单片机毕业设计】基于 STM32 的老人跌倒与环境监测报警装置设计,基于单片机的多传感器安全监护系统设计与实现(013501)
  • TAS54x4A评估模块实战:从硬件连接到软件调试的完整指南
  • 大文件分片上传:从原理到实战,解决Web开发中的传输难题
  • 按照这个方法真的领到了8元
  • GeoTools 多模块依赖最佳实践:一次 OrderedAxisAuthorityFactory 初始化失败的深度复盘
  • 【大模型原理与微调实战02】为什么需要Transformer?深度剖析RNN/LSTM核心缺陷
  • PROFINET 工业无线 IWLAN 全解析(上)
  • Nacos 注解全解析:7 个核心注解 + 5 个生产踩坑清单(2026 实测)
  • 虚拟判断者与真实创造者——所属技术领域的技术人员与发明人的对比分析
  • petpetgo项目
  • 凑微分 sinx和cosx的转换
  • Sesame-TK:面向支付宝生态的模块化自动化解决方案
  • Java代码使用ssh来连接服务器+LibreOffice命令转换文件doc-docx
  • 英语启蒙分级体系完善的app推荐,对标国内小学教材零基础友好
  • go: Deadline Pattern
  • HarmonyOS 实战|中式美食食材大全页:分类联动、网格稳定高度与食材检索入口设计
  • 清宫后多久出门不怕风?分阶段防风与科学修护指
  • 论文阅读笔记 | Thinking in Frames: How Visual Context and Test-Time Scaling Empower Video Reasoning
  • Upstage AI发现了生物医学大模型最隐蔽的致命缺陷
  • 万字干货|2026 Go 后端通关学习路线,从底层原理到微服务面试全覆盖(附 Code Review 规范 + 线上故障排查方案)
  • 泛微ECOLOGY9流程主明细行弹窗添加子明细的实现
  • 解除labelstdio数据标注一次上传图片数量限制的方法
  • TAS2564评估板实战:从数字功放原理到立体声系统集成
  • 一人创业时,内容、开发、客户跟进分别适合用哪些AI工具辅助