如何在AnyLogic的某代理中访问Car代理内Delay块的size属性?
访问其他代理内Delay块的size属性方法
根据你在AnyLogic中的场景,分两种情况实现:
- 单个Car代理实例:如果你的Car是主代理中直接创建的单个实例(对象名就是Car),直接通过实例名+Delay块名+属性名访问即可,代码格式为:
注意:Car.delay.sizedelay要替换成你在Car代理中给Delay块实际取的名称,比如Delay块叫parkingDelay,就写成Car.parkingDelay.size。 - 多个Car代理实例:如果存在多个Car实例(比如存储在集合、群体中),需要先定位到目标Car实例,再访问其Delay块的size属性。例如从名为
carCollection的集合中找到指定ID的Car:
或者如果是通过流程传递的对象,可直接用对应对象变量访问。findFirst(carCollection, c -> c.id == targetId).delay.size - 额外注意:确保Car代理内的Delay块访问修饰符为public(AnyLogic默认就是public,若手动修改过需改回),否则其他代理无法访问该块的属性。
内容的提问来源于stack exchange,提问作者Aqeel Tariq
相关产品推荐
相关产品推荐

