7
votes

Trouvez une valeur maximale en Java avec un comparateur prédéfini

J'ai une liste et une méthode Comparer () en prenant deux objets FOO et renvoyer le "plus grand". Existe-t-il une méthode Java intégrée qui prend la liste et trouve le plus grand?


0 commentaires

7 Réponses :


8
votes

Oui, la liste est une sous-classe de collection et vous pouvez donc utiliser le MAX Méthode .


0 commentaires

3
votes

Essayez java.util.collections.max


0 commentaires

3
votes

0 commentaires

30
votes

si foo implémente comparable , puis collections.max (Collection) est ce que vous recherchez.

Sinon, vous pouvez créer un comparateur et utiliser collections.max (collection, comparateur) à la place.

Exemple xxx


0 commentaires

0
votes

Jetez un coup d'œil à Google Collections - ils ont de nombreuses méthodes qui vous aident à faire ce genre de chose en utilisant des prédicats.


0 commentaires

0
votes

Jetez un coup d'œil à Lambdaj aussi. Il y a beaucoup de fonctionnalité pour manipuler la collection dans un style fonctionnel.


0 commentaires

2
votes

supposer foo n'est pas une classe interne et Comparer () méthode existe dans une classe nommée compareclass

Vous pouvez faire ce qui suit : xxx

qui donne au du chiffre et la méthode comparer comme entrée sur collections.max () < / code> et renvoie l'objet foo avec la valeur max - en fonction de votre méthode de comparaison.


0 commentaires