查找浮点值的ArrayList的最小值

时间:2014-04-12 14:20:10

标签: java arraylist floating-point min

我在尝试做一些我希望非常简单的事情时会遇到各种各样的问题。我有一个浮点值的ArrayList,我想以列表的形式返回列表中的最小值。我期待这样的事情发挥作用:

public float getMin(){
float min = Collections.min(Arrays.asList(listOfThings)));
return min;
} 

但我一直遇到大量不兼容问题。

最有效的方法是什么?

由于

2 个答案:

答案 0 :(得分:4)

如果您使用Collection作为通用,Collection.min会返回Object,因此您应该将其转换。

这样做:

Object obj = Collections.min(arrayList);
Float f = Float.parseFloat(obj.toString());
return f.floatValue();

或者只需将ArrayList定义为

ArrayList<Float> 

并且您无需转换它。

答案 1 :(得分:2)

如果您使用的是Java8,则可以使用stream对象来实现目标:

float value = list.stream().min(Comparator.<Float>naturalOrder()).get();