黑马程序员技术交流社区
标题:
二维数组赋值 读取操作报ArrayIndexOutOfBoundsException[已解决]
[打印本页]
作者:
丁乐
时间:
2012-5-24 16:34
标题:
二维数组赋值 读取操作报ArrayIndexOutOfBoundsException[已解决]
本帖最后由 丁乐 于 2012-5-24 16:54 编辑
public class Exercise2 {
public static void main(String[] args){
int size1 = 10;
int size2 = 2;
int[][] array = new int[size2][size1];
//遍历二维数组 并赋值1
for(int i =0;i<size1;i++){
for(int j =0;j<size1;j++){
array[i][j]=1;
}
}
//遍历并打印数组
for(int i =0;i<size2;i++){
for(int j =0;j<size1;j++){
System.out.println("["+i+"]"+"["+j+"]="+array[i][j]);
}
}
}
}
/*Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
at Exercise2.main(Exercise2.java:9)
*/
复制代码
作者:
符云爵
时间:
2012-5-24 16:37
public class Exercise2 {
public static void main(String[] args){
int size1 = 10;
int size2 = 2;
int[][] array = new int[size2][size1];
//遍历二维数组 并赋值1
for(int i =0;i<
size1
;i++){ //红色部分应改为size2
for(int j =0;j<size1;j++){
array
[j]=1;
}
}
//遍历并打印数组
for(int i =0;i<size2;i++){
for(int j =0;j<size1;j++){
System.out.println("["+i+"]"+"["+j+"]="+array
[j]);
}
}
}
}
作者:
田建
时间:
2012-5-24 16:48
首先你看到这个提示:ArrayIndexOutOfBoundsException,应该知道是发生了脚标越界异常。既然是脚标越界了,你就应该去检查你代码中的size1和size2;你定义的size1=10,size2=2;而在你的外循环中你写的size1超出了你定义的size2的范围,这就是异常的原因;不过看了你的代码应该是粗心所致,因为下面的是对的!所以当出现异常的时候首先要知道是什么意识,然后知道根据所报异常怎么去解决就好!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2