是否可以在一行中为两个对象调用相同的方法?
发件人:
a.roll();
b.roll();
收件人:
a.b.roll();
答案 0 :(得分:3)
您可以使用varargs
参数定义一个rollAll()
函数,该函数接受任意数量的相同类型的参数。
因此您的代码应如下所示:
rollAll(a, b);
或
rollAll(a, b, c, d, e);
rollAll()
的方法定义如下:
void rollAll(Rollable... rollables) {
for (Rollable r: rollables) {
r.roll();
}
}