使用 entrySet 遍历 Map 类集合 KV

简介: 遍历Map时,entrySet效率高于keySet,因后者需两次遍历:转Iterator和查value,而entrySet一次将KV封装为entry。JDK8推荐使用Map.forEach。values()返回V集合,keySet()返回K集合,entrySet()返回KV组合集。

说明:keySet 其实是遍历了 2 次,一次是转为 Iterator 对象,另一次是从 hashMap 中取出key 所对应的 value。而 entrySet 只是遍历了一次就把 key 和 value 都放到了 entry 中,效率更高。
如果是 JDK8,使用 Map.foreach 方法。
正例:values()返回的是 V 值集合,是一个 list 集合对象;keySet()返回的是 K 值集合,是一个 Set 集合对象;entrySet()返回的是 K-V 值组合集合。

相关文章
|
3月前
|
人工智能 自然语言处理 安全
MCP的核心组件
MCP采用客户端-服务器架构,由MCP主机、客户端和服务器组成。主机承载AI智能体并发起请求;客户端负责请求标准化与安全通信;服务器提供数据、工具和提示,支持AI实时访问外部资源与服务,实现高效交互。
|
3月前
|
人工智能 安全
MCP是什么?为何被称为AI时代的“USB-C”
MCP(模型上下文协议)是AI领域的“通用接口”,像USB-C一样让大模型便捷连接数据源与工具。它通过标准化上下文传递,实现信息互通与任务协同,确保每次调用都具备数据血统、策略与出处管理,推动AI无缝交互与安全可控运行。
|
3月前
|
机器学习/深度学习 存储 人工智能
全球主流开源向量数据库
开源向量数据库凭借高效索引、相似性搜索、可扩展性及与机器学习框架的深度集成,正成为AI应用的核心基础设施。其活跃社区持续推动生态发展,广泛支持推荐系统、实时分析等场景,助力高维数据高效管理与智能应用落地。
|
3月前
|
机器学习/深度学习 数据采集 人工智能
大模型训练方法与技术术语解释
预训练奠定语言基础,微调适配特定任务,RLHF融入人类偏好,思维链提升推理能力。少样本与零样本实现快速迁移,指令微调增强指令理解。自监督学习利用海量无标注数据,温度控制生成随机性,蒸馏压缩模型规模,缩放定律指导模型扩展,共同推动大模型发展。
|
3月前
|
机器学习/深度学习 存储 人工智能
大模型基础概念术语解释
大语言模型(LLM)基于Transformer架构,通过海量文本训练,具备强大语言理解与生成能力。其核心组件包括注意力机制、位置编码、嵌入层等,支持万亿级参数规模,展现出涌现与泛化特性。Token为基本处理单元,MoE架构提升效率。模型能力随规模扩大显著跃升,推动AI语言处理发展。
|
3月前
|
前端开发
SpringMVC的执行流程
用户请求由DispatcherServlet接收,通过HandlerMapping查找处理器,经HandlerAdapter调用执行,返回ModelAndView;再由ViewResolver解析视图并渲染,最终响应用户。整个流程实现请求的分发、处理与视图展示。
|
3月前
|
存储 NoSQL 物联网
MongoDB应用场景
MongoDB适用于社交、游戏、物流、物联网及直播等场景,擅长处理数据量大、读写频繁、事务要求不高的应用。其灵活的文档模型支持高效存储用户信息、订单状态、设备日志等,结合地理位置索引与内嵌数组,实现高性能查询与实时分析,是高并发非结构化数据存储的理想选择。(238字)
|
3月前
|
安全 API
SimpleDateFormat不要定义为static
SimpleDateFormat线程不安全,避免定义为static;若需静态使用,应加锁或采用ThreadLocal隔离。推荐JDK8新时间API:Instant、LocalDateTime、DateTimeFormatter,具备线程安全、简洁易用等优势。
|
3月前
|
SQL Java 数据库连接
Spring中的事务是如何实现的
Spring事务基于数据库事务与AOP实现,通过代理对象拦截加了@Transactional的方法,创建连接并禁用自动提交,方法执行后根据异常情况决定提交或回滚。事务隔离级别对应数据库级别,传播机制由Spring管理,基于数据库连接实现,复杂但灵活。

热门文章

最新文章