java - 函数采用矩阵(二维数组)并打印每行中偶数的最大数量

标签 java arrays

我正在定义一个函数来接受矩阵(二维数组),例如 x[][];并且该函数应在每一行中打印最大的偶数

public static void biggestEvenNumOfEachLine(int x[][]){
    int even,t=0,max;
    int arr[] = new int [x.length];
    for(int i = 0; i < x.length;i++){
        for(int j = 0; j < x[i].length;j++,t++){
            if(x[i][j] % 2 == 0){
                even = x[i][j];
                arr[j] = even;
            }   
        }
    }
}

我错过了什么?

最佳答案

我将从在单个线阵列中找到最大的偶数开始。从可能的最小值开始,然后迭代数组。测试偶数,然后设置 max(然后返回)。类似的东西,

private static int biggestEvenNum(int[] x) {
    int max = Integer.MIN_VALUE;
    for (int i = 0; i < x.length; i++) {
        if (x[i] % 2 == 0) {
            max = Math.max(max, x[i]);
        }
    }
    return max;
}

但是,在 Java 8+ 中,我更喜欢 filter 偶数并获得 max喜欢

private static int biggestEvenNum(int[] x) {
    return IntStream.of(x).filter(v -> v % 2 == 0).max().getAsInt();
}

那么您的方法就像迭代矩阵中的 line(s),打印结果一样简单。喜欢,

public static void biggestEvenNumOfEachLine(int[][] x) {
    for (int[] line : x) {
        System.out.println(biggestEvenNum(line));
    }
}

关于java - 函数采用矩阵(二维数组)并打印每行中偶数的最大数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38688240/

相关文章:

具有自定义对象的 JavaFX 自定义单元工厂

java - ProcessBuilder java Unix 命令

java - 实例化对象和子/父​​类的关系

php - 使用 'preg_replace' 和具有多个索引的数组时是否会影响性能或其他一些负面因素?

java - 递归问题 - Java - 高尔夫击球的最小次数

java - 使用 SAXParser 解析 xml

java - 在 Java 8 上为 Maven 单元测试设置时区

javascript - Redux 状态更新两个单独的对象

php - 哪些库/模块会影响阵列的运行速度?

jquery - Play Framework 和 jQuery Ajax 请求,数据为数组