在java中,我需要能够遍历数组并找到最大值。我如何比较数组的元素以找到最大值?
答案 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)
迭代数组。首先将最大值初始化为数组的第一个元素,然后对于每个元素,如果所考虑的元素更大,则优化它。