1 2 3 4 5
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException
        at PrintLine.Print(PrintLine.java:28)
        at PrintLine.main(PrintLine.java:43)这个程序在编译是通过了,但是执行后,在结果下,有如此的提示,请问,为什么。谢谢。

解决方案 »

  1.   

    知道哪错了。哈哈。for(int i=0; i<=Length-1; i++) {
                  for(int j=0; j<=4; j++) {
    这样就对了。
      

  2.   

    知道就好for(int i=0; i<Length; i++) {
    ...
    }
      

  3.   

    建议使用下面的方法, 呵呵。      PrintLine Print(int NewLine[][]) {
          /**调用时,需要使用到数组的名字和高维的长度。*/
              this.NewLine = NewLine;
              this.Length = Length;          for(int i=0; i<(NewLine).length; i++) {
                  for(int j=0; j< (NewLine[i]).length; j++) {
                      /**用两个循环来打印二维数组*/
                      System.out.print(" " + NewLine[i][j] + " ");
                  }
                  System.out.print("\n");     //转到下一行
              }
              return this;
          }
      

  4.   

    可能忘了数组下标是从0开始的,修改如下:
    for(int i=0; i<Length; i++) {          //注:把小于等于改成小于
          for(int j=0; j<=4; j++) {
               /**用两个循环来打印二维数组*/
               System.out.print(" " + NewLine[i][j] + " ");
          }
          System.out.print("\n");     //转到下一行
    }还有以下语句也不好:
    pl.Print(l,1);                      //调用方法
    把第二个参数最好不要直接写成数字1,用l.length(是字母L的小写)来代替.
    这个不是必须,只是善意的提醒.