获取Anylogic

时间:2017-11-03 09:57:19

标签: anylogic

我有以下问题,很想得到一些帮助。 情况:

代理A在人口X中,代理人B在人口Y中

我想将代理A的变量varA设置为代理B的varB。代理A和代理B位于不同的群体X和Y中,但代理B是群体B中唯一的参数par1等于参数par1的代理代理人A.。

我试图将其写入一个函数,每当我需要更新该特定参数时调用该函数,但无法成功执行此操作。

非常感谢任何帮助。

最佳Heinz_S

1 个答案:

答案 0 :(得分:0)

让我们说你的人口名称是popX和popY ......最初varA与varB不同,你想根据他们在参数par1上的匹配使它们相等

以下函数将匹配人口中具有相等par1的所有代理,并且在所有情况下使varA等于varB。您可以更有效地使用stream()......但我不知道如何。

for(int i=0;i<popX.size();i++){
    for(int j=0;j<popY.size();j++){
        if(popX.get(i).par1==popY.get(j).par1){
            popX.get(i).varA=popY.get(j).varB;
        }
    }
}