有人可以协助我将这个例子翻译成一个完整的写入for循环以及一个while循环,因为我试图理解这个捷径,但我不确定它到底意味着什么?
double a = 0;
for(int b : c)
a += b;
a /= c.length;
return a
答案 0 :(得分:2)
这是一个等效的“正常”(非增强型)for
循环:
for (int i = 0; i < c.length; i++) {
int b = c[i];
a += b;
}
相应的while
循环:
int i = 0;
while (i < c.length) {
int b = c[i];
a += b;
i++
}
答案 1 :(得分:0)
for循环:
double a = 0;
for (int b : c) {
a = a + b;
}
a = a / c.length;
return a;
while loop:
double a = 0;
int i = 0;
while (i < c.length) {
a = a + c[i];
i++;
}
a = a / c.length;
return a;
c似乎是int[]
答案 2 :(得分:0)
此循环实际上是计算一系列数字的平均值。观看a
重命名为average
,b
重命名为currentValue
,c
重命名为values
:
double average = 0;
for(int currentValue : values)
average += currentValue;
average /= values.length;
return average;
本身没有“捷径”,只有一些语法快捷方式。以下是完整版的外观:
double average = 0;
for (int currentValue : values) {
average = average + currentValue;
}
average = average / values.length;
return average;
作为一个while循环:
double average = 0;
int index = 0;
while (index < values.length) {
int currentValue = values[i];
average = average + currentValue;
}
average = average / values.length;
return average;