A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

package com.heim.bean;


public class AAA {


        /**
         * @param args
         */
        public static void main(String[] args) {
                int[][] arr = { { 11, 22, 33, 44, 55 }, { 55, 22, 33, 66 },
                                { 99, 88, 77 } };
                reverse(arr);
                print(arr);
        }


        public static void reverse(int[][] arr) {
                for (int i = 0; i < arr.length / 2; i++) {
                        for (int j = 0; j < arr.length / 2; j++) {
                                int x = arr[j];
                                arr[j] = arr[arr.length - 1 - i][arr[arr.length - 1 - i].length
                                                - i];
                                arr[arr.length - 1 - i][arr[arr.length - 1 - i].length - 1 - i] = x;


                        }


                }
        }


        public static void print(int[][] arr) {
                for (int i = 0; i < arr.length; i++) {
                        for (int j = 0; j < arr.length; j++) {
                                System.out.println(arr[j]);
                        }
                }
        }


}
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3
        at com.heim.bean.AAA.reverse(AAA.java:20)

        at com.heim.bean.AAA.main(AAA.java:11)



3 个回复

正序浏览
for (int j = 0; j < arr[i].length / 2; j++)
回复 使用道具 举报
arr[j] = arr[arr.length - 1 - i][arr[arr.length - 1 - i].length- i];
                                arr[arr.length - 1 - i][arr[arr.length - 1 - i].length - 1 - i] = x;

这是什么
回复 使用道具 举报
j<arr.length ??arr.length是二维数组的长度,一位数组应该用arr[i].length,i是一位数组的索引
回复 使用道具 举报 1 0
您需要登录后才可以回帖 登录 | 加入黑马