我正在做一个android的骰子游戏,我有这个循环,用滚动“j”的数字滚动来填充数组。它是这样进行的这个for循环有什么问题?
int[] rolls = new int[6];
for (int j : rolls) {
rolls[j] = (int) (Math.random() * 5);
rolls[j]++;
Log.i(getClass().getName(), "Rolls[" + j + "] = " + rolls[j]);
}
除输出(在日志文件中是这样)
Rolls[0] = 4
Rolls[0] = 2
Rolls[0] = 3
Rolls[0] = 6
Rolls[0] = 3
Rolls[0] = 4
当我更改代码以这种
int[] rolls = new int[6];
for (int j = 0; j < rolls.length ; j++) {
rolls[j] = (int) (Math.random() * 5);
rolls[j]++;
Log.i(getClass().getName(), "Rolls[" + j + "] = " + rolls[j]);
}
输出是正确的
Rolls[0] = 4
Rolls[1] = 2
Rolls[2] = 3
Rolls[3] = 6
Rolls[4] = 3
Rolls[5] = 4
我一定在做s某处愚蠢的东西。
谢谢大家的精彩答案(他们太快了!)andersoj得到正确的答案,因为他先回答。现在我得去讲我的HS电脑老师... – Gonzo 2011-03-28 02:35:40