java - 获取二维数组的最大值

标签 java arrays for-loop multidimensional-array

所以,我在想出一个返回二维数组中存储的最大值的函数时遇到了困难。我知道我需要一个 for 循环来迭代二维数组,但我迷失了

class maximum {
   public static void main(String[] args) {
      int[][] table = { {3, 9, 6, 12},
                        {23, -25, 54},
                        {0, -12, 27, 8, 16} };
      System.out.println(getMax(table));  //prints 54
  }
  static int getMax(int[][] A){


     }
}

最佳答案

你知道自己需要什么,那就去做吧。

static int getMax(int[][] A) {
    int max = 0;
    boolean maxValid = false;
    if (A != null) {
        for (int i = 0; i < A.length; i++) {
            if (A[i] != null) {
                for (int j = 0; j < A[i].length; j++) {
                    if (!maxValid || max < A[i][j]) {
                        max = A[i][j];
                        maxValid = true;
                    }
                }
            }
        }
    }
    if (!maxValid) throw new IllegalArgumentException("no elements in the array");
    return max;
}

关于java - 获取二维数组的最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36002220/

相关文章:

java事务不应该回滚所有记录

javascript - 将数组插入多维数组

javascript - 使用下划线替换或推送数组中的对象

powershell - PowerShell-每个-重复

java - 使用带有用户输入的 java for 循环来制作自定义钻石

java - for 循环和 ArrayList<Integer>

java - 在代理调用之间共享 GUI (JFrame)

java - EJB3 : Why are transaction semantics and statefulness considered implementation details?

java - 寻找可用于一组数字排列的最小增量

c++ - 如何在 C++ 的派生类中分配数据成员数组?