AnyLogic流程图中nCars()函数使用异常,求正确实现方式
问题描述
我正在使用Select Output块,需实现当一条轨道的轨道车数量少于另一条时执行特定操作。目前在条件为真的区域使用以下代码:
int x int y track1.nCars()=x track2.nCars()=y (x.intValue() >= y.intValue());但该代码无法正常运行,特此咨询如何在流程图块中正确使用nCars()函数?
修正方案
你的代码存在语法逻辑错误,调整后即可正常运行:
- 变量赋值顺序搞反了,Java风格的赋值是「变量 = 取值方法」,需把声明和赋值合并为一行
nCars()方法返回的本身就是整数类型,无需额外调用intValue()进行类型转换- 条件判断可直接返回布尔值,冗余括号可省略
修正后的代码:
int x = track1.nCars(); int y = track2.nCars(); x >= y;
如果需要判断track1的车辆数少于track2,只需把条件改为x < y;即可。
内容的提问来源于stack exchange,提问作者Maddie
相关产品推荐
相关产品推荐

