java数据处理:Map<String, Object>、Map<String, List<Room>>、Map<String, Integer>

已知数据都存在WargameConfig.HallMap里。

一、Map<String, Integer>

需求:按照scenarioName进行分类,统计每种scenarioName下的Room对象有多少;
思路:统计一个名为WargameConfig.HallMap的集合中,每个不同场景名称(scenarioName)出现的次数。返回一个键值对映射(Map<String, Integer>),其中键是场景名称,值是该名称出现的次数。

    @Overridepublic Map<String, Integer> getScenarioNameCounts() {// 1. 创建一个空的HashMap,用于存储场景名称及其出现次数Map<String, Integer> scenarioNameCounts = new HashMap<>();// 2. 遍历WargameConfig.HallMap中的每一个键值对(房间ID与Room对象)for (Map.Entry<String, Room> entry : WargameConfig.HallMap.entrySet()) {// 3. 处理每个 entry,获取当前遍历到的Room对象Room room = entry.getValue();// 4. 从Room对象中提取场景名称(scenarioName)String scenarioName = room.getScenarioName();// 5. 更新统计:将当前场景名称的计数加1scenarioNameCounts.put(scenarioName, scenarioNameCounts.getOrDefault(scenarioName, 0) + 1);}return scenarioNameCounts;}

关键
(1)entrySet():返回 Map 中所有键值对的集合,将 HallMap 转换为 Set<Map.Entry<String, Room>> 集合,每个元素是 Map.Entry<String, Room> 类型。
(2)Map.Entry :表示键值对:Map.Entry 是 Map 接口的静态内部接口,用于封装单个键值对实体。Map.Entry<String, Room>:表示一个键值对实体,包含 getKey() 和 getValue()和setValue() 方法。

 使用 entrySet 遍历,直接通过 Map.Entry 获取键和值
// 方式1:entrySet()(推荐)
for (Map.Entry<String, Room> entry : map.entrySet()) {String key = entry.getKey();Room value = entry.getValue()</

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/33080.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt/C++音视频开发82-系统音量值获取和设置/音量大小/静音

一、前言 在音视频开发中&#xff0c;音量的控制分两块&#xff0c;一个是控制播放器本身的音量&#xff0c;绝大部分场景都是需要控制这个&#xff0c;这个不会影响系统音量的设置。还有一种场景是需要控制系统的音量&#xff0c;因为播放器本身的音量是在系统音量的基础上控…

十三、OSG学习笔记-osgDB文件读写

上一章节&#xff1a; 十二、OSG学习笔记-Control-CSDN博客https://blog.csdn.net/weixin_36323170/article/details/146082287?spm1001.2014.3001.5501 一、文件读取原理 ReadNodeFile,读取流程&#xff1a; 二、实现一个简单的读取器 仿造ReaderWriterOSG.CPP原码&#x…

05.基于 TCP 的远程计算器:从协议设计到高并发实现

&#x1f4d6; 目录 &#x1f4cc; 前言&#x1f50d; 需求分析 &#x1f914; 我们需要解决哪些问题&#xff1f; &#x1f3af; 方案设计 &#x1f4a1; 服务器架构 &#x1f680; 什么是协议&#xff1f;为什么要设计协议&#xff1f; &#x1f4cc; 结构化数据的传输问题 …

设计模式学习笔记——命令模式

2025年3月13日&#xff0c;周四下午 相同的保存逻辑在各个组件中重复出现。 且需要修改保存逻辑时&#xff0c;各个组件的保存逻辑都需要进行相应修改。 使用了命令模式把保存逻辑从三个组件中独立出来后&#xff0c;减少了代码冗余。 可以通过“保存命令”来使用保存逻辑&am…

CNN-BiLSTM、BiLSTM、CNN多变量时间序列光伏功率预测Matlab

CNN-BiLSTM、BiLSTM、CNN多变量时间序列光伏功率预测Matlab 目录 CNN-BiLSTM、BiLSTM、CNN多变量时间序列光伏功率预测Matlab预测效果基本介绍程序设计参考资料 预测效果 基本介绍 CNN-BiLSTM、BiLSTM、CNN三模型多变量时序光伏功率预测 (Matlab2020b 多输入单输出) 1.程序已…

机器学习算法——聚类任务

目录 1、K-Means 2、K-medoids 3、K-medians 4、层次聚类 5、DBSCAN 6、OPTICS 7、谱聚类 Spectral Clustering 8、高斯混合模型 GMM 9、模糊C-means FCM 10、Mean Shift 11、BIRCH 12、Affinity Propagation 13、对比总结 14、完整代码 1、K-Means 目标:将数据点分组到K个簇中…

【亲测有用】数据集成平台能力演示(支持国产数据库DaMeng与KingBase)

&#x1f525;&#x1f525; AllData大数据产品是可定义数据中台&#xff0c;以数据平台为底座&#xff0c;以数据中台为桥梁&#xff0c;以机器学习平台为中层框架&#xff0c;以大模型应用为上游产品&#xff0c;提供全链路数字化解决方案。 ✨杭州奥零数据科技官网&#xf…

初阶数据结构(C语言实现)——5.2 二叉树的顺序结构及堆的实现

1.二叉树的顺序结构及实现 1.1 二叉树的顺序结构 普通的二叉树是不适合用数组来存储的&#xff0c;因为可能会存在大量的空间浪费。而完全二叉树更适合使用顺序结构存储。现实中我们通常把堆(一种二叉树)使用顺序结构的数组来存储&#xff0c;需要注意的是这里的堆和操作系统…

搭建阿里云专有网络VPC

目录 一、概述 二、专有网络vpc 2.1 vpc基本信息 2.2 vpc资源管理 2.3 vpc网段管理 三、交换机 四、NAT网关 4.1 绑定弹性公网IP 4.2 NAT网关信息 4.3 绑定的弹性公网IP 4.4 DNAT 4.5 SNAT 五、弹性公网IP 六、访问控制ACL&#xff08;绑定交换机&#xff09; 6…

Android `%d` 与 `1$%d` 格式化的区别

在 Android 开发中&#xff0c;我们经常需要对字符串进行格式化处理&#xff0c;比如动态填充数字、日期、字符等。 其中&#xff0c;%d 和 1$%d 都是格式化占位符&#xff0c;但它们在使用上有一些不同。 本文将详细解析这两者的区别&#xff0c;并结合 Kotlin 代码示例帮助你…

Spring MVC面试题(一)

1.什么是Spring MVC&#xff1f; 全称为Model View Controller&#xff0c;Spring MVC是Spring的一个模块&#xff0c;基于MVC架构模式的一个框架 2.Spring MVC优点&#xff1f; 1.可用各种视图技术&#xff0c;不仅限于JSP 2.支持各种请求资源映射策略 3. Spring MVC工作原…

AI自动化编程初探

先说vscodeclinemodelscope方案&#xff0c;后面体验trae或者cursor再写写其它的。vscode和trae方案目前来说是免费的&#xff0c;cursor要用claud需要付费&#xff0c;而且不便宜&#xff0c;当然效果可能是最好的。 vscode方案&#xff0c;我的经验是最好在ubuntu上&#xff…

什么是全栈?

&#x1f91f;致敬读者 &#x1f7e9;感谢阅读&#x1f7e6;笑口常开&#x1f7ea;生日快乐⬛早点下班 &#x1f4d8;博主相关 &#x1f7e7;博主信息&#x1f7e8;博客首页&#x1f7eb;专栏推荐&#x1f7e5;活动信息 &#x1f4c3;文章前言 &#x1f537;文章均为学习工…

爬虫一些基础知识的备忘录(需要自取)

前言 基础薄弱&#xff0c;或许是ai用多的缘故&#xff0c;记录了写爬虫需要的一些基础知识&#xff0c;需要自取 这里记录一些我初学爬虫的时候经常忘记的东西&#xff0c;包括但不限于一些文件的读写和一些其他的东西 文件读写 文件读写&#xff0c;如果想表达——若文件…

ChromeOS 134 版本更新

ChromeOS 134 版本更新 一、ChromeOS 134 更新内容 1. ChromeOS 自助终端&#xff08;Kiosk&#xff09;模式支持隔离 Web 应用&#xff08;Isolated Web Apps&#xff09; 从 ChromeOS 134 开始&#xff0c;自助终端&#xff08;Kiosk&#xff09;模式支持 隔离 Web 应用&a…

【redis】list类型:基本命令(上)

文章目录 插入和弹出操作获取和删除等操作允许有重复元素LPUSH/RPUSHLRANGELPUSHX/RPUSHXLPOP/RPOPLINDEXLINSERT 插入和弹出操作 列表&#xff08;list&#xff09;相当于数组或者顺序表 约定最左侧元素下标为 0Redis 的下标支持负数下标&#xff08;从后往前数&#xff09;…

Science Advances 视触觉传感机制的交互装置,可以实时测量来自手不同部位的分布力

近日&#xff0c;由香港科技大学&#xff08;HKUST&#xff09;电子与计算机工程学系申亚京教授领导的研究团队&#xff0c;提出了一种基于数字通道的触觉交互系统&#xff0c;可以实时测量来自手不同部位的分布力&#xff0c;有望在医学评估、体育训练、机器人和虚拟现实&…

美食分享平台(源码+数据库+万字文档)

一、项目介绍 440.基于SpringBoot的美食分享平台&#xff0c;系统包含两种角色&#xff1a;管理员、用户,系统分为前台和后台两大模块&#xff0c;主要功能如下。 【前台功能】 1. 首页&#xff1a;提供用户进入系统的入口。 2. 菜谱&#xff1a;用户可以浏览系统中分享的各种…

uniapp简单table表

<template><view class"container"><scroll-view scroll-x"true" scroll-y"true" class"table-scroll"><view class"table-header"><view class"table-cell fixed-column">序号<…

微信小程序:实现多功能表格效果,例如滚动效果、宽度自定义、多选、行内编辑等功能

一、表格效果 1、实现功能 表格实现可横向水平滚动表格、宽度自定义、文本编辑、数字加减、多选&#xff0c;行选中效果&#xff0c;获取选中行数据等功能 2、图片效果 二、代码 1、wxml 根据头循环将表格头进行循环&#xff0c;再通过昂循环展示行内的全部信息&#xff0…