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

为什么AnyLogic中Delay块为空时调用stopDelay()函数会抛出错误

问题根源

代码直接调用delay.get(0)获取首个延时实例,当Delay块内无实体时,delay列表为空,访问下标0会触发索引越界异常,导致运行报错。

修复方案

执行停止操作前先做合法性校验,确认delay对象非空且存在有效延时实例后再执行后续逻辑,修复后代码如下:

// 先校验合法性再执行操作
if (delay != null && delay.size() > 0) {
    delay.stopDelay(delay.get(0));
}
  • delay != null校验规避delay对象本身为空导致的空指针异常
  • delay.size() > 0校验确保列表内存在可操作的延时实例,避免索引越界问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 17:15:04