【发布时间】:2012-05-13 08:04:45
【问题描述】:
如何从Arraylist 及其索引位置中找到最大值?
ArrayList ar = new ArrayList();
ar.add(2); // position 0
ar.add(4); // position 1
ar.add(12); // position 2
ar.add(10); // position 3
ar.add(12); // position 4
String obj = Collections.max(ar);
int index = ar.indexOf(obj);
System.out.println("obj max value is " + obj + " and index position is " + index);
上述程序只是将输出作为第一个最大对象返回,其值为12,索引位置为2。
但我的实际输出应该是索引位置2 和4(因为最大值12 存在于两个索引位置)。
【问题讨论】:
-
到目前为止你尝试过什么?请阅读FAQ 和How to Ask。此外,您已经提出了 13 个问题并接受了零回答。请返回并接受一些答案。
-
为什么不简单地使用
for循环来遍历列表,使用.get(i)获取每个列表元素。