我如何找到数组中的最大值?

时间:2013-05-01 19:39:53

标签: java arrays for-loop max

在java中,我需要能够遍历数组并找到最大值。我如何比较数组的元素以找到最大值?

3 个答案:

答案 0 :(得分:17)

有一个max int并将其设置为数组中的第一个值。然后在for循环中迭代整个数组,看看max int是否大于当前索引的int。

int max = array.get(0);

for (int i = 1; i < array.length; i++) {
    if (array.get(i) > max) {
      max = array.get(i);
    }
}

答案 1 :(得分:14)

如果您可以更改元素的顺序:

 int[] myArray = new int[]{1, 3, 8, 5, 7, };
 Arrays.sort(myArray);
 int max = myArray[myArray.length - 1];

如果您无法更改元素的顺序:

int[] myArray = new int[]{1, 3, 8, 5, 7, };
int max = Integer.MIN_VALUE;
for(int i = 0; i < myArray.length; i++) {
      if(myArray[i] > max) {
         max = myArray[i];
      }
}

答案 2 :(得分:2)

迭代数组。首先将最大值初始化为数组的第一个元素,然后对于每个元素,如果所考虑的元素更大,则优化它。