HarmonyOS应用开发实战:猫猫大作战-遍历中修改集合的注意事项 前言在游戏引擎中经常需要遍历集合并修改元素。Array.forEach()是 ArkTS 中最常用的遍历方法配合Array.from()将 Map 转换为数组后操作。本文以GameEngine.updateCats()中的sortedCat.forEach()为锚点讲解遍历中修改集合的注意事项。提示本系列不讲 ArkTS 基础语法与环境搭建假设你已跟完第 1–123 篇。本篇是阶段四第 124 篇。一、遍历修改1.1 遍历下落的猫咪sortedCats.forEach((cat) { if (!cat.falling) return; const nextY cat.y 1; if (nextY GameConfig.BOARD_HEIGHT) { cat.falling false; // 修改猫猫对象的属性 this.placeCatOnBoard(cat); } else if (this.board[nextY][cat.x] ! null) { cat.falling false; // 修改猫猫对象的属性 this.placeCatOnBoard(cat); } else { cat.y nextY; // 修改猫猫对象的 y 坐标 } });1.2 注意事项场景说明修改元素属性✅ 在 forEach 中直接修改cat.falling删除当前元素⚠️ 用Map.delete在外部处理新增元素✅ 在遍历前/后处理不要在遍历中 insert二、总结forEach 适用于遍历集合并修改元素属性的场景删除/新增建议在遍历外处理。核心要点forEach遍历数组中的每只猫咪直接修改cat.falling/cat.y属性删除操作cats.delete(cat.id)在合并逻辑中处理下一篇预告第 125 篇将深入四邻合并检测——方向数组遍历。如果这篇文章对你有帮助欢迎点赞、收藏⭐、关注你的支持是我持续创作的动力相关资源Array.forEach MDN 文档开源鸿蒙跨平台社区第 123 篇sort排序第 125 篇合并检测