我试图让我的代码在 for 循环中针对不同的 i 值以不同的方式工作,但我不知道我是应该让条件进入循环内部还是只创建多个 for 循环以提高速度。
我的英语在解释事情时似乎效率很低,所以这里有一个例子:
for (int i = 1; i < 31; i++) {
if (i < 11) {
System.out.println(3*i);
} else if (i<21) {
System.out.println(2*i);
} else System.out.println(i);
}
或
for (int i = 1; i < 11; i++) System.out.println(3*i);
for (int i = 11; i < 21; i++) System.out.println(2*i);
for (int i = 21; i < 31; i++) System.out.println(i);
如果也能解释其中一个可能更好或不更好的原因,那将非常有帮助。提前谢谢你:>
最佳答案
提高速度不应该是一个考虑因素。差异(如果有的话)可以忽略不计。
您应该选择更具可读性的版本。当使用 for
循环时,通常意味着您希望执行相同的操作 N
次。在您的情况下,您想执行 3 个不同的操作,每个操作的次数不同(或 i
的不同值)。因此,有 3 个循环更有意义。
for (int i = 1; i < 11; i++) {
System.out.println(3*i);
}
for (int i = 11; i < 21; i++) {
System.out.println(2*i);
}
for (int i = 21; i < 31; i++) {
System.out.println(i);
}
关于java - 有条件的内部 for 循环还是大量的 for 循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48300190/