日期:2014-05-20  浏览次数:20632 次

关于赋值的问题
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。