Java 掷骰子和计数数组初学者
我想做一个简单的程序,掷骰子1000次,计算每个数字1-6出现的次数。它工作正常,但最后出现了一个错误。为什么会发生这种情况Java 掷骰子和计数数组初学者,java,arrays,Java,Arrays,我想做一个简单的程序,掷骰子1000次,计算每个数字1-6出现的次数。它工作正常,但最后出现了一个错误。为什么会发生这种情况 public class diceRollerCounter { public static void main(String[] args) { int dice [] = new int[7]; for(int x = 0 ; x <1000; x++ ) { ++dice [(int)(Math
public class diceRollerCounter {
public static void main(String[] args) {
int dice [] = new int[7];
for(int x = 0 ; x <1000; x++ ) {
++dice [(int)(Math.random()*6+1)];
}
System.out.println("Number Frequency" );
for(int index = 0; 1 < dice.length ; index++) {
System.out.println(index + " " + dice[index]);
}
}
}
如果
1
小于dice.length
,您的for
循环条件测试将始终为true
。但是您会不断增加索引
,直到它离开数组的末尾
而是测试索引
是否小于骰子长度
顺便说一句,您可能希望将
索引初始化为1
,这样您就可以跳过0
出现频率为0
的数字的输出,以便在1
小于dice.length
时进行循环条件测试,并且它总是true
。但是您会不断增加索引
,直到它离开数组的末尾
而是测试索引
是否小于骰子长度
顺便说一句,您可能希望将索引初始化为1
,这样您就可以跳过0
出现频率为0
的数字的输出,以便在1
小于dice.length
时进行循环条件测试,并且它总是true
。但是您会不断增加索引
,直到它离开数组的末尾
而是测试索引
是否小于骰子长度
顺便说一句,您可能希望将索引初始化为1
,这样您就可以跳过0
出现频率为0
的数字的输出,以便在1
小于dice.length
时进行循环条件测试,并且它总是true
。但是您会不断增加索引
,直到它离开数组的末尾
而是测试索引
是否小于骰子长度
顺便说一下,您可能需要将索引初始化为1
,因此,您可以跳过频率为0
的数字0
的输出情况1
?有关无法再现的问题或由简单的印刷错误引起的问题已脱离主题。虽然这里可能有类似的问题,但这些问题往往以一种不太可能帮助未来读者的方式得到解决。@ChthonicProject那么我应该删除这篇文章吗?@eananhalferty:我投票赞成结束。顺便说一下,我希望这不会阻止你使用SO。这是一个很棒的社区,一旦你掌握了窍门,你几乎肯定会喜欢上它。什么是条件1
?关于一个无法重现的问题或由一个简单的印刷错误引起的问题是离题的。虽然这里可能有类似的问题,但这些问题往往以一种不太可能帮助未来读者的方式得到解决。@ChthonicProject那么我应该删除这篇文章吗?@eananhalferty:我投票赞成结束。顺便说一下,我希望这不会阻止你使用SO。这是一个很棒的社区,一旦你掌握了窍门,你几乎肯定会喜欢上它。什么是条件1
?关于一个无法重现的问题或由一个简单的印刷错误引起的问题是离题的。虽然这里可能有类似的问题,但这些问题往往以一种不太可能帮助未来读者的方式得到解决。@ChthonicProject那么我应该删除这篇文章吗?@eananhalferty:我投票赞成结束。顺便说一下,我希望这不会阻止你使用SO。这是一个很棒的社区,一旦你掌握了窍门,你几乎肯定会喜欢上它。什么是条件1
?关于一个无法重现的问题或由一个简单的印刷错误引起的问题是离题的。虽然这里可能有类似的问题,但这些问题往往以一种不太可能帮助未来读者的方式得到解决。@ChthonicProject那么我应该删除这篇文章吗?@eananhalferty:我投票赞成结束。顺便说一下,我希望这不会阻止你使用SO。这是一个很棒的社区,一旦你掌握了窍门,你几乎肯定会爱上它。@down请说明如何改进这篇文章。非常感谢你。现在解释起来很简单哈哈:)@Downvoter请说明如何改进这篇文章。非常感谢你。现在解释起来很简单哈哈:)@Downvoter请说明如何改进这篇文章。非常感谢你。现在解释起来很简单哈哈:)@Downvoter请说明如何改进这篇文章。非常感谢你。现在解释起来很简单哈哈:)
Number Frequency
0 0
1 170
2 143
3 188
4 165
5 173
6 161
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 7
at diceRollerCounter.main(diceRollerCounter.java:20)