动易网站后台修改栏目的字wordpress 图片管理系统

张小明 2026/1/1 8:42:30
动易网站后台修改栏目的字,wordpress 图片管理系统,网站设计 注意,莱芜融媒体中心网站由于很久没有进行javase的语法学习#xff0c;对于HashMap中的键值对操作有些不熟悉#xff0c;使用ai帮我重温了一下#xff0c;于是便有了这篇博客 #x1f4da; 目录#xff08;点击跳转对应章节#xff09; 一、最推荐#xff1a;遍历 entrySet#xff08;同时获取…由于很久没有进行javase的语法学习对于HashMap中的键值对操作有些不熟悉使用ai帮我重温了一下于是便有了这篇博客 目录点击跳转对应章节一、最推荐遍历entrySet同时获取键 值效率最高1. 增强 for 循环JDK 5简洁易读2. 迭代器JDK 5显式控制遍历流程二、仅遍历键keySet或仅遍历值values1. 仅遍历键keySet2. 仅遍历值values三、JDK 8 简化写法forEach 方法Lambda 表达式1. 同时遍历键 值推荐2. 仅遍历键/值结合 Stream四、各遍历方式对比选型参考五、注意事项总结在 Java 中遍历哈希表核心实现为HashMap的键和值有多种方式适配不同的 JDK 版本和使用场景如仅遍历键、仅遍历值、同时遍历键值对。下面按常用程度 易用性排序讲解每种遍历方式的写法、适用场景和注意事项。核心前提HashMap实现了Map接口遍历的核心是利用Map提供的三类视图keySet()获取所有键的Set集合values()获取所有值的Collection集合entrySet()获取所有键值对Map.Entry的Set集合最推荐的全量遍历方式。一、最推荐遍历entrySet同时获取键 值效率最高entrySet()直接返回键值对的集合只需一次遍历即可同时获取key和value避免了“先遍历键再通过get(key)查值”的二次哈希查找效率最优是全量遍历键值对的首选。1. 增强 for 循环JDK 5简洁易读importjava.util.HashMap;importjava.util.Map;publicclassMapTraversal{publicstaticvoidmain(String[]args){HashMapString,IntegerscoreMapnewHashMap();scoreMap.put(张三,90);scoreMap.put(李四,85);scoreMap.put(王五,95);// 遍历 entrySet同时获取 key 和 valuefor(Map.EntryString,Integerentry:scoreMap.entrySet()){Stringkeyentry.getKey();// 获取键Integervalueentry.getValue();// 获取值System.out.println(键key值value);}}}输出键张三值90 键李四值85 键王五值952. 迭代器Iterator遍历支持删除元素若遍历过程中需要安全删除元素避免ConcurrentModificationException需用迭代器importjava.util.HashMap;importjava.util.Iterator;importjava.util.Map;publicclassMapTraversal{publicstaticvoidmain(String[]args){HashMapString,IntegerscoreMapnewHashMap();scoreMap.put(张三,90);scoreMap.put(李四,85);scoreMap.put(王五,95);// 迭代器遍历 entrySetIteratorMap.EntryString,IntegeriteratorscoreMap.entrySet().iterator();while(iterator.hasNext()){Map.EntryString,Integerentryiterator.next();Stringkeyentry.getKey();Integervalueentry.getValue();// 示例删除值 90 的键值对if(value90){iterator.remove();// 安全删除continue;}System.out.println(键key值value);}System.out.println(删除后的哈希表scoreMap);// {张三90, 王五95}}}二、仅遍历键keySet或仅遍历值values若只需单独处理键或值无需同时获取用keySet()或values()更简洁。1. 仅遍历键keySetHashMapString,IntegerscoreMapnewHashMap();scoreMap.put(张三,90);scoreMap.put(李四,85);// 增强 for 循环遍历键for(Stringkey:scoreMap.keySet()){System.out.println(键key);}// 迭代器遍历键支持删除IteratorStringkeyIteratorscoreMap.keySet().iterator();while(keyIterator.hasNext()){StringkeykeyIterator.next();if(key.equals(李四)){keyIterator.remove();// 删除键对应的键值对也会被删除}}2. 仅遍历值valuesHashMapString,IntegerscoreMapnewHashMap();scoreMap.put(张三,90);scoreMap.put(李四,85);// 增强 for 循环遍历值for(Integervalue:scoreMap.values()){System.out.println(值value);}// 迭代器遍历值注意无法直接通过值删除键值对IteratorIntegervalueIteratorscoreMap.values().iterator();while(valueIterator.hasNext()){IntegervaluevalueIterator.next();if(value85){// 错误示例valueIterator.remove() 会导致异常或不一致// 正确做法建议改用 entrySet 迭代器通过键删除}}三、JDK 8 简化写法forEach 方法Lambda 表达式JDK 8 新增的forEach方法Map接口默认方法用 Lambda 表达式简化遍历代码最简洁。1. 同时遍历键 值推荐HashMapString,IntegerscoreMapnewHashMap();scoreMap.put(张三,90);scoreMap.put(李四,85);// forEach Lambda 遍历键值对scoreMap.forEach((key,value)-{System.out.println(键key值value);// 支持修改值需重新 putif(key.equals(张三)){scoreMap.put(key,value5);// 张三的分数改为 95}});System.out.println(修改后的哈希表scoreMap);// {张三95, 李四85}2. 仅遍历键/值结合 Stream// 仅遍历键stream 过滤scoreMap.keySet().stream().filter(key-key.startsWith(张)).forEach(key-System.out.println(过滤后的键key));// 仅遍历值stream 求和inttotalScorescoreMap.values().stream().mapToInt(Integer::intValue).sum();System.out.println(总分totalScore);// 示例180四、各遍历方式对比选型参考遍历方式适用场景效率支持删除JDK 版本entrySet增强 for同时遍历键值无需删除最高不支持5entrySet迭代器同时遍历键值需删除元素最高支持1.2keySet仅遍历键或通过键查值较低二次哈希支持1.2values仅遍历值中等不推荐1.2forEachLambda简洁遍历无需复杂逻辑同 entrySet不支持需手动 put/remove8五、注意事项无序性HashMap遍历顺序不保证与插入顺序一致若需保留插入顺序使用LinkedHashMap遍历方式完全相同线程安全非线程安全的HashMap在多线程遍历/修改时需加锁如synchronized或使用ConcurrentHashMap禁止遍历中修改增强 for 循环遍历中直接put/remove会抛出ConcurrentModificationException需用迭代器或ConcurrentHashMap自定义对象作为键若键是自定义对象需重写hashCode()和equals()否则遍历可能出现异常如重复键。总结优先选entrySet增强 for / 迭代器→ 效率最高支持同时获取键值对JDK 8 首选forEach(Lambda)→ 代码最简洁仅需键/值keySet()/values()→ 简化代码需删除元素entrySet迭代器 → 安全无异常。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

怎么给网站做百度优化装修案例图

打造属于你的 Elasticsearch 关键词搜索神器:从一行代码到生产级功能你有没有过这样的经历?凌晨三点,服务器报警,日志刷屏。你打开 Kibana,输入“OutOfMemoryError”,却因为界面卡顿、响应缓慢,…

张小明 2025/12/31 0:55:22 网站建设

微站是什么东西学生制作个人网站

特性 工作输入电压范围:0.9V至5.2V 超低静态电流 0.6uA (TYP) Ultra-Low lq int VOUT Pin0.05uA(典型值)超低电流至VIN输入端 1.1.2MHz固定频率运行 可调输出电压范围从2.5V到5.2V 提供固定输出电压版本 低输出功率时的节能模式,提升效率 降压模式下的稳压输出电压 …

张小明 2025/12/31 1:56:32 网站建设

python建设购物网站网络营销手段

第一章:Shell脚本的基本语法和命令Shell脚本是Linux/Unix系统中自动化任务的核心工具,通过编写可执行的文本文件,用户能够批量处理命令、管理文件系统以及监控系统状态。脚本通常以#!/bin/bash开头,称为Shebang,用于指…

张小明 2025/12/31 2:20:56 网站建设

网站设计公司多少钱网页设计培训高清图集

SNMP信息收集与NET - SNMP使用指南 1. SNMP访问概述 在SNMP(简单网络管理协议)中,NET - SNMP可以完全阻止写访问,也能将访问限制到特定主机,并限制所透露的信息。对于如交换机和路由器等硬件中实现的其他代理,若制造商提供了SNMPv3,需要权衡是否真的需要使用它。不过,…

张小明 2025/12/31 3:01:49 网站建设

基于php技术的个人网站设计免费推广的途径与原因

摘要 随着电子商务的快速发展,线上销售平台成为消费者购买商品的重要渠道。东北特产因其独特的地理环境和传统工艺,具有较高的市场价值,但受限于地域性,传统销售模式难以满足全国消费者的需求。因此,设计一个基于协同过…

张小明 2025/12/31 4:24:41 网站建设

凡科论坛网站制作企业响应网站

ARM 汇编指令:ORRS 在 ARM 架构中,ORRS 是一条按位逻辑或(OR)指令,并且会根据操作结果更新条件标志位。1. 基本含义 ORR 逻辑或(Bitwise OR)S 后缀,表示该指令执行后要更新 APSR&a…

张小明 2025/12/31 4:25:43 网站建设