8768 sujets

Développement web côté serveur, CMS

Bonjour,
Je souhaite trier une liste de graphiques (objet UtiGraphique) par utilisateurs (objet RefUtilisateur) par nom et prénom d'utilisateur.
J'ai ce code pour trier par nom et qui marche bien :
getListeUtiGraphiquePartage().sort(Comparator.comparing((UtiGraphique) -> UtiGraphique.getRefUtilisateur().getNom()));


Je souhaite trier la liste aussi par prénom et j'ai ce code mais qui ne marche pas ! :
getListeUtiGraphiquePartage().sort(Comparator.comparing((UtiGraphique) -> UtiGraphique.getRefUtilisateur().getNom())
    .thenComparing((UtiGraphique) -> UtiGraphique.getRefUtilisateur().getPrenom()));


Enfin je souhaite trier la liste par ordre décroissant avec ce code mais qui ne marche pas ! :
getListeUtiGraphiquePartage().sort(Comparator.comparing((UtiGraphique) -> UtiGraphique.getRefUtilisateur().getNom())
    .thenComparingInt((UtiGraphique) -> UtiGraphique.getRefUtilisateur().getPrenom()).reverse());


Pouvez-vous m'aider SVP ? MERCI.
Modifié par denisduval75 (17 Jan 2022 - 10:59)
La solution :
getListeUtiGraphiquePartage().sort(Comparator.comparing((UtiGraphique u) -> u.getRefUtilisateur().getNom())
                    .reversed()
                    .thenComparing((UtiGraphique u) -> u.getRefUtilisateur().getPrenom()));  
Meilleure solution