Вызов одного и того же метода для двух объектов одного класса в одной строке - PullRequest
0 голосов
/ 27 августа 2018

Можно ли вызвать один и тот же метод для двух объектов в одной строке?

От:

a.roll();
b.roll();

Кому:

a.b.roll();

1 Ответ

0 голосов
/ 27 августа 2018

Вы можете использовать параметр varargs для определения функции rollAll(), которая принимает произвольное количество аргументов одного типа.

Итак, ваш код будет выглядеть так:

rollAll(a, b);

или

rollAll(a, b, c, d, e);

Определение метода для rollAll() будет выглядеть так:

void rollAll(Rollable... rollables) {
    for (Rollable r: rollables) {
        r.roll();
    }
}
...