是否有更简单的方法来重写此循环?代码较少的东西。 任何帮助表示赞赏。
for(int i=0; i< 50; i++){
if(i>=0 && i<10){
method(arr[0]);
}
if(i>=10 && i<20){
method(arr[1]);
}
if(i>=20 && i<30){
method(arr[2]);
}
if(i>=30 && i<40){
method(arr[3]);
}
if(i>=40 && i<50){
method(arr[4]);
}
}
答案 0 :(得分:2)
你可以使用这种方法:
for(int i = 0; i < 50; i++){
int index = i == 0 ? 0 : (int)Math.floor(i / 10);
method(arr[index]);
}
答案 1 :(得分:1)
我可能会使用模块化功能和计数器重写它。这应该有助于显着减少代码。
int index;
int count = 0;
for(int i=0; i< 50; i++){
index = i%10;
if(index==0){
count++;
}
method(arr[count-1]);
}
答案 2 :(得分:1)
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < 10; j++) {
method(arr[i]);
}
}
您可以使用函数来提高可读性:
for (int i = 0; i < arr.length; i++) {
method10(arr[i]);
}
答案 3 :(得分:0)
使用else
:
for (i=0; i<50: i++) {
if (i<10) {
method(arr[0]);
} else if (i<20) {
method(arr[1]);
} else if (i<30) {
method(arr[2]);
} else if (i<40) {
method(arr[3]);
} else {
method(arr[4]);
}
}
对于一个班轮,您可以使用简短的if语句。 FALSE
检查另一个条件的地方
for (i=0; i<50: i++) {
(condition) ? TRUE : FALSE
}