在我的一位演员中,我创建了一个像这样的路由器演员:
import java.util.LinkedHashSet;
import java.util.Set;
public class CommonCharacters {
public static void main(String[] args) {
Pair<String, String> p = getDuplicates("abdxzewxk", "axzmnx");
System.out.println("Unique:" + p.value1 + " Common:" + p.value2);
}
public static Pair<String, String> getDuplicates(String s1, String s2)
{
Set<Character> xters1 = new LinkedHashSet<Character>();
Set<Character> xters2 = new LinkedHashSet<Character>();
for (char c : s1.toCharArray()) {
xters1.add(c);
}
for (char c : s2.toCharArray()) {
xters2.add(c);
}
Set<Character> unique = new LinkedHashSet<>();
Set<Character> common = new LinkedHashSet<>();
for (char c : xters1) {
if (xters2.contains(c))
common.add(c);
else
unique.add(c);
}
for (char c : xters2) {
if (xters1.contains(c))
common.add(c);
else
unique.add(c);
}
return new Pair(stringfry(common), stringfry(unique));
}
public static String stringfry(Set<Character> chrs) {
StringBuilder sb = new StringBuilder();
chrs.forEach(s -> {
sb.append(s);
});
return sb.toString();
}
static class Pair<E, U> {
private E value1;
private U value2;
public Pair(E value1, U value2) {
this.value1 = value1;
this.value2 = value2;
}
}
其中this.actorRouter = getContext().actorOf(Props.empty().withRouter(new BroadcastGroup(neighbours)), "router");
是字符串列表(地址)。现在我希望能够更改该列表。例如,当一个新消息从一个未知的actor到达时,我想将他的地址添加到我的路由器。我尝试用新列表执行上面的行,但是会导致错误:
已采取演员姓名
创建一个BroadcastGroup后是否可以操作它?
答案 0 :(得分:1)
来自the doc
管理消息