如何解决如何接收来自不同代理的消息
我有4个具有举报行为的代理,每个代理在每个步骤之后将值发送给接收者代理,我希望此接收器将来自代理的接收值存储在4个数组中(每个数组用于一个发送者) 如何实现接收方代理行为?
解决方法
类似这样的东西
public class ReceiveMessageBehaviour extends CyclicBehaviour {
private Map<AID,String[]> values = new HashMap<>();
@Override
public void action() {
ACLMessage aclMessage = myAgent.receive();
if(aclMessage == null){
return;
}
String value = aclMessage.getContent();
String[] aidValues = values.get(aclMessage.getSender());
if(aidValues == null){
aidValues = new String[]{value};
values.put(aclMessage.getSender(),aidValues);
} else {
values.put(aclMessage.getSender(),ArrayUtils.add(aidValues,value));
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。