Topic: 问题在哪里!(ArrayIndexOutOfBoundsException) |
Print this page |
1.问题在哪里!(ArrayIndexOutOfBoundsException) | Copy to clipboard |
Posted by: fossil Posted on: 2005-08-23 19:09 Please use the [ code ] tag for source code. 请尽量使用准确的文字描述作为标题 Your next post without a proper Subject will be removed. Original subject : 大家帮我看看我的问题在哪里!
最后输完5个数后出来:Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException at max.main(max.java:36) 好像是数组的长度问题!但我不会!大家帮帮忙! |
2.Re:大家帮我看看我的问题在哪里! [Re: fossil] | Copy to clipboard |
Posted by: truthawp Posted on: 2005-08-23 20:50 恩 for (int i=0;i<test.length ;i++ ) 这里有点问题了,楼主想的不错,应该是数组长度的问题;由于是i<test.length,而且楼主的if语句这样写的话最后就会比较test[4]和test[5]了,而test[5]下标已经益出,所以就有问题了,其实改的方法很多,这里我就这样改下for语句 for (int i=0;i<test.length-1 ;i++ )就可以了 还有if这么写可能会有问题的(无法正确获得最大的数) 这样应该就没问题了
|
3.Re:问题在哪里!(ArrayIndexOutOfBoundsException) [Re: fossil] | Copy to clipboard |
Posted by: fossil Posted on: 2005-08-24 10:18 非常感谢!以前在C语言中好像不存在这个问题!谢谢! |
4.Re:问题在哪里!(ArrayIndexOutOfBoundsException) [Re: fossil] | Copy to clipboard |
Posted by: why Posted on: 2005-08-24 11:22 fossil wrote: This is only because it doesn't check array bound. |
5.Re:大家帮我看看我的问题在哪里! [Re: truthawp] | Copy to clipboard |
Posted by: CunningFox Posted on: 2005-09-23 14:05 truthawp wrote: 数组长度问题是解决了,但是这种方法找不出最大值,如1,9,1,6,7 我改了一下: max=test[0]; System.out.println(test[0]); for (int i=0;i<test.length ;i++ ){ if (max<test[i]) max=test[i]; } System.out.println("最大数为"+max); } |
6.Re:问题在哪里!(ArrayIndexOutOfBoundsException) [Re: fossil] | Copy to clipboard |
Posted by: fly135 Posted on: 2005-09-23 18:24 CunningFox 说得对,我说怎么这么别扭 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |