Следующий кодовый блок повторяется, но я не слишком раздражен этим:
// method 1
for (int i = 0; i < RUNS; i++) {
otherObject.method1();
}
// method 2
for (int i = 0; i < RUNS; i++) {
otherObject.method2();
}
// method 3
for (int i = 0; i < RUNS; i++) {
otherObject.method3();
}
// method 4
for (int i = 0; i < RUNS; i++) {
otherObject.method4();
}
Однако, если это повторится, скажем, для метода 10, это может начать беспокоить меня, что у меня есть этобольшой повторяющийся блок в середине моего кода.Инстинктивно (и, возможно, наивно) я хотел бы изменить его на что-то вроде этого:
for(int j = 0; j < 4; j++){
for(int i = 0; i < RUNS; i++){
switch(j){
case 0: otherObject.method1(); break;
case 1: otherObject.method2(); break;
case 2: otherObject.method3(); break;
case 3: otherObject.method4(); break;
}
}
}
Если число вызываемых методов или число RUNS станет очень большим, станет ли это неэффективнымпостоянно повторять через оператор switch?Если да, есть ли хороший способ обойти эту проблему?