黑马程序员技术交流社区
标题:
看下 编译无错误 运行不出来 出现的提示看不懂
[打印本页]
作者:
18643448863
时间:
2014-9-20 15:56
标题:
看下 编译无错误 运行不出来 出现的提示看不懂
本帖最后由 18643448863 于 2014-10-9 07:40 编辑
class maoPao
{
public static void maopao(int[] arr)
{for(int x=0;x<arr.length;x++)
{
for(int y=0;y<arr.length-x;y++)
{
if(arr[y]>arr[y+1])
{int z= arr[y];
arr[y]=arr[y+1];
arr[y+1]=z;}
}
}
}
public static void main(String[] args)
{int [] arr={7,1,6,4,2,8,3};
maopao(arr);
paixudayin(arr);}
public static void paixudayin(int[] arr)
{
System.out.print("[");
for(int x=0;x<arr.length;x++)
{ if(x!=arr.length-1)
System.out.print(arr[x]+",");
else
System.out.print(arr[x]+"]");}
}
}
复制代码
F:\java练习代码\day02>java maoPao
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 7
at maoPao.maopao(maopao.java:14)
at maoPao.main(maopao.java:24)
怎么个情况
作者:
犹豫铅笔
时间:
2014-9-20 16:19
提示是数组越界,当x=0时,y=arr.length-x-1时,arr[y+1] = arr[arr.length-x]=arr[arr.length](越界)
作者:
犹豫铅笔
时间:
2014-9-20 16:26
本帖最后由 犹豫铅笔 于 2014-9-20 17:11 编辑
提示是数组越界,当x=0时,y=arr.length-x-1时,arr[y+1] = arr[arr.length-x]=arr[arr.length](越界),把里层的for循环的条件改成y<arr.length-x-1就ok了
作者:
lipc
时间:
2014-9-20 16:34
数组越界。。。常见错误。。。
作者:
暴风
时间:
2014-9-20 16:55
比老师java基础视频 数组那一段讲的很清楚,再仔细学习一下吧
作者:
范鹏霄
时间:
2014-9-20 17:02
java.lang.ArrayIndexOutOfBoundsException:
数组溢出
作者:
笑脸迷人
时间:
2014-9-20 20:06
:'(角标越界,还是比较容易调试出来的~
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2