如何更改我在 Anylogic 中使用 sortAscending 过滤的代理变量?

问题描述 投票:0回答:1

我的代理人数为 100。该人数有一个称为预算的参数,其值在 100 到 200 之间。

现在我对这个群体进行了排序,并在主代理的启动功能上使用以下函数过滤出了预算最大的前 3 个代理。

List ags =sortAscending(main.bidders,m->m.Budget).subList(0,1);
for(Bidder m : main.bidders){
    m.willDoSomething=true;
}

现在,接下来我只想将这三个代理的布尔类型变量的值更改为 true。但上面的代码将所有代理的变量更改为 true。我不知道这里出了什么问题。

anylogic
1个回答
0
投票
List ags =sortAscending(main.bidders,m->m.Budget).subList(0,1);
for(Bidder m : ags){
    m.willDoSomething=true;
}

for 循环用 ags 更改了 main.biders

© www.soinside.com 2019 - 2024. All rights reserved.