You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity中foreach循环仅首次迭代输出完整内容,后续仅打印物品名如何解决?

问题原因

你遇到的现象不是代码逻辑错误,是Unity控制台的折叠相同日志功能导致的。

你的代码逻辑完全正确:玩家持有金币为12,三个物品价格分别是5、7、1,全部低于12,所以三次foreach循环都会输出You can afford this!。由于这三条日志内容完全一致,当你开启了Unity控制台顶部的Collapse开关时,相同内容的日志会被合并为一条展示,仅在条目右侧显示累计出现次数,因此你只会看到第一次循环的购买提示,后面两条被折叠隐藏了。

验证/解决方法

  • 点击Unity控制台面板顶部的Collapse按钮,取消勾选即可展示所有未折叠的日志条目
  • 可以修改提示文本,把物品名称加入日志内容避免重复,示例修改如下:
if (kvp.Value <= playerGold)
    Debug.LogFormat("You can afford {0}!", kvp.Key);
else
    Debug.LogFormat("Sorry, you're too broke to afford {0}!", kvp.Key);

修改后每条日志内容唯一,不会被折叠,也能更清晰地看到每个物品对应的提示。

内容的提问来源于stack exchange,提问作者SpicyBrownieMix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 00:39:02