java 问题Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 10 at suijishu.main(s

public class suijishu
{

/**
* @param args
*/
public static void main(String[] args)
{
int a[]=new int[10];
int max;
int min;
for(int i=1;i<=10;i++)
{
a[i]=(int)(1+(Math.random()*(10-1+1)));
System.out.println(a[i]);
}
max=a[1];
min=a[1];
for(int i=1;i<=10;i++)
{
if(a[i]>max) max=a[i];
if(a[i]<min) min=a[i];
}
System.out.println("您所求的最大值为:"+max);
System.out.println("您所求的最小值为:"+min);
}
}

第1个回答  推荐于2018-05-04
楼主,java数组计数是从0开始的
也就是说int a[] = new int[10]
使用的时候是a[0] - a[9] 没有a[10]
数组越界来源于你用了a[10]
把for循环改改就行了
把for(int i=1;i<=10;i++) 改成
for(int i=0;i<10;i++)就可以了本回答被提问者和网友采纳
相似回答