在ArrayList Java中查找对象

时间:2013-10-05 05:19:35

标签: java collections arraylist

我有一个对象的ArrayList。每个对象都是Player类型(我拥有的类之一)。 每个Player对象都有一个getName()方法和一个getValue()方法。 getValue方法是整数类型。 所有Player对象都进入ArrayList,listOfPlayers。 如何找到getValue()最高的PLayer对象?

我知道有一个名为Collections.max()的方法,但对我来说,只有当ArrayList只是整数时才会起作用。

由于

2 个答案:

答案 0 :(得分:5)

max()与比较器

一起使用
Collection.max(collection, customComparator);

另见

答案 1 :(得分:2)

您需要像这样为您的班级实施比较器

Comparator<Player> cmp = new Comparator<Player>() {
    @Override
    public int compare(Player o1, Player o2) {
        return Integer.valueOf(o1.getValue()).compareTo(Integer.valueOf(o2.getValue()));
    }
};

然后致电

  Collections.max(listOfPlayers, cmp);