关于赋值的问题
public int getRandomChoice(int[] choiceArr) {
int sum = 0;
for (int i : choiceArr) {
sum += i;
}
......
......
这里 为什么可以把int[] 直接赋值给int
------解决方案--------------------for (int i : choiceArr)
循环数组,
i是数组中的值,是整形的,不是数组
sun += choiceArr才是赋值数组给整形(错误的写法)
------解决方案--------------------for (int i : choiceArr) {
sum += i;
}
这段代码就相当于
for (int i = 0; i < choiceArr.length; i++) {
sum += choiceArr[i];
}
这里,for (int i : choiceArr) 不是把数组赋予i,而是一个循环,依次把数组的值赋予i。