Mmc秒杀圈百科 

Iterable.forEach:查看版本 v1

由 朝武芳乃 于 2026-10-04 01:00 保存 · 1064 字节
''本条基于 Minecraft 1.20.1 + Forge,Mojang 映射名。'' '''Iterable.forEach'''(<code>java.lang.Iterable#forEach(Consumer)</code>)是 Java 8 加入的默认方法,对每个元素执行给定操作。 == 与实体储存的关系 == * <code>LevelEntityGetter.getAll()</code> 返回 <code>Iterable<T></code>,实际是 [[EntityLookup]] 中 <code>byId.values()</code> 的只读包装(Guava <code>Iterables.unmodifiableIterable</code>)。 * [[EntityCommand]](/forge entity list)就是用 <code>level.getEntities().getAll().forEach(e -> ...)</code> 统计实体,统计结果完全取决于 <code>byId</code> 里有什么。 * 客户端 [[LevelRenderer]] 对 <code>ClientLevel.entitiesForRendering()</code>(同样是 <code>getAll()</code>)用的是增强 for 循环,走 <code>iterator()</code> 而不是 <code>forEach</code>。 * [[EntityTickList]] 自带的 <code>forEach(Consumer)</code> 只是同名方法,遍历的是 tick 名单。 == 备注 == 因为是只读包装,不能通过 <code>getAll()</code> 的迭代器删除实体。

其他版本