java中对数组越界有着严格的规定,但是你的程序编译会通过,只不过在执行时会出现下列一行文字
“Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException”
我在写关于约瑟夫环的时候遇到了这个,当然也是本人的粗心大意,因为以往的C++以及C编程中并未严格的控制数组越界,所以即使在C,C++中能执行这样的越界编译的代码,也是十分不严谨的。
这是我原始的代码
然后编译通过后出现了这样的文字
我们接着看其显示问题的39行,我写了一个if的判断语句,但是这并没有问题,那我们再往上找,发现在第34行,是存在越界行为的。
因为总共为TotalNum个人,计数时应该为0到TotalNum-1,而不是TotalNum,然后我们再将语句修改
编译执行
此时便不存在问题了。
版权声明:本文为qq_34153977原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。