繁体   English   中英

返回布尔值

[英]Return the boolean value

我必须编写这样一个程序:1.两个二维数组具有相同的维数m×n,2.满足aij = bij且i = 0的条件。 ,m和j = 0 ,。 ,n仅当同时满足以上两个条件时,该方法才以逻辑值true的形式返回结果。 “返回结果”是什么意思? 这意味着它显示在屏幕上吗? 我写了这样的东西:

static boolean isEqual(int[][] a, int[][] b) {
    int ia = 0;`
    int ib = 0;
    int ja = 0;
    int jb = 0;
    boolean equal=true;
    for (int i = 0; i < a.length; i++) {
        for (int j = 0; j < a[i].length; j++) {

            ia++;
        }
        ja++;
    }

    for (int i = 0; i < b.length; i++) {
        for (int j = 0; j < b[i].length; j++) {

            ib++;
        }
        jb++;
    }
    if (ia == ib && ja == jb) {
        for (int i = 0; i < b.length; i++) {
            for (int j = 0; j < b[i].length; j++) {
                if (a[i][j] != b[i][j]) {
                    equal= false;
                } 
            }
        }

    } else {
        equal= false;
    }
    return equal;


}

}

您的代码不需要iaibjajb 既然已经知道两个数组的维数相同(m×n),则可以使用int m = a.length; int n = a[0].length;来简单地获得这两个值int m = a.length; int n = a[0].length; int m = a.length; int n = a[0].length;

然后将您的代码简化为:

static boolean isEqual(int[][] a, int[][] b) {
    int m = a.length;
    int n = a[0].length;
    for (int i = 0; i < m; i++)
        for (int j = 0; j < n; j++)
            if (a[i][j] != b[i][j])
                return false;
    return true;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM