【发布时间】:2011-11-29 01:35:15
【问题描述】:
有一个存储整数值的 ArrayList。我需要在这个列表中找到最大值。例如。假设 arrayList 存储的值是:10, 20, 30, 40, 50 和最大值
值为50。
找到最大值的有效方法是什么?
@Edit :我刚刚找到了一个我不太确定的解决方案
ArrayList<Integer> arrayList = new ArrayList<Integer>();
arrayList.add(100); /* add(200), add(250) add(350) add(150) add(450)*/
Integer i = Collections.max(arrayList)
这会返回最大值。
另一种比较每个值的方法,例如selection sort or binary sort algorithm
【问题讨论】:
-
您是否尝试过寻找价值?你在哪里卡住了?您自己的解决方案是否效率太低?
-
如果它是你经常做的事情,Java 会将它编译成汇编,所以除非你做一些愚蠢的事情,否则你的代码只需要一个简单的迭代器就会非常高效。
-
@AnthonyPegram :我的意思是哪种排序算法或者java中有什么方法?顺便说一句,检查 gotomanners 的答案。
-
对于可能包含
null值的数组:stackoverflow.com/questions/369383/… -
Java 8 : stackoverflow.com/a/52270228/1216775
标签: java