我知道下面的代码会给出一个数组中最大的值,但为什么呢?
public class Practice {
public static int greatest(ArrayList<Integer> list) {
int greatest = list.get(0);
for(int i: list){
if(i > greatest){
greatest = i;
}
}
return greatest;
}
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<Integer>();
list.add(3);
list.add(5);
list.add(2);
list.add(7);
list.add(8);
System.out.println("The greatest number is: " + greatest(list));
}
}
如果它将列表中索引的第一个值与循环时大于它的另一个值进行比较,那么它不会选择5而不是8吗?如何知道选择8而不是5?
非常感谢。
答案 0 :(得分:0)
阅读java中增强的for循环或foreach循环。
变量i中的数组值不是索引。