我正在尝试编写代码,对骰子掷出的骰子进行总计(不必担心dice [i]的输出,我只需要返回该和)。
public static int displayAndTotalDice(int[] dice) {
int i;
for (i = 0; i < dice.length; ++i) {
System.out.println("Dice " + i + " rolls: " + dice[i]);
int sum = 0 + dice[i];
}
return sum;
}
我收到错误“求和不能解析为变量”。有什么建议吗?
答案 0 :(得分:2)
sum
应该是作用域(并初始化)的,以便在循环之后可以访问它。
public static int displayAndTotalDice(int[] dice) {
int i, sum = 0;
for (i = 0; i < dice.length; ++i) {
System.out.println("Dice " + i + " rolls: " + dice[i]);
sum += dice[i];
}
return sum;
}
答案 1 :(得分:1)
在sum
循环中使用for
变量的声明并返回其值之前,将其移至方法级作用域。
您将收到错误 “总和无法解析为变量。” ,因为您在sum
循环中声明了for
,因此仅在循环中可见。
public static int displayAndTotalDice(int[] dice) {
int i;
int sum = 0;
for (i = 0; i < dice.length; ++i) {
System.out.println("Dice " + i + " rolls: " + dice[i]);
sum += dice[i];
}
return sum;
}