Maison >Java >javaDidacticiel >Quelles sont les deux façons de créer des objets anonymes en Java

Quelles sont les deux façons de créer des objets anonymes en Java

王林
王林avant
2023-05-02 21:43:101270parcourir

1. Méthode d'outil statique

Collections.sort accepte une liste et une interface Comparator comme paramètres d'entrée. La classe d'implémentation Comparator peut comparer les éléments de la liste d'entrée. Normalement, vous pouvez créer directement un objet Comparator anonyme et le transmettre en tant que paramètre à la méthode de tri.

List<String> names = Arrays.asList("peter", "anna", "mike", "xenia");
 
Collections.sort(names, new Comparator<String>() {
    @Override
    public int compare(String a, String b) {
        return b.compareTo(a);
    }
});

2. Expression Lambda

Collections.sort(names, (String a, String b) -> {
    return b.compareTo(a);
});

Comme vous pouvez le constater, ce code est plus court et plus facile à lire que le précédent. Cependant, il peut être encore plus court :

Collections.sort(names, (String a, String b) -> b.compareTo(a));

Une seule ligne de code, y compris le corps de la méthode. Vous pouvez même omettre les accolades {} et le mot-clé return. Mais ce n'est pas la manière la plus courte de l'écrire :

Collections.sort(names, (a, b) -> b.compareTo(a));

Le compilateur Java peut identifier automatiquement le type des paramètres, vous pouvez donc omettre le type.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer