recherche
MaisonJavaLa fonction Lamba ne fonctionne pas dans la méthode java groupingBy (via l'interface Collectors)

L'éditeur php Strawberry vous présentera le rôle de la fonction Lamba dans la méthode groupingBy de Java dans cet article. groupingBy est une méthode de regroupement implémentée via l'interface Collectors. Cependant, la fonction Lamba ne fonctionne pas dans cette méthode. Ensuite, nous détaillerons pourquoi la fonction Lamba ne peut pas être utilisée dans la méthode groupingBy et proposerons quelques alternatives. Explorons ensemble !

Contenu de la question

J'ai créé ma première carte où les clés sont des créneaux de cordes pour les cours de sport et les valeurs sont le nombre de participants par créneau. Maintenant, je veux créer une deuxième carte avec les clés et les valeurs essentiellement inversées, donc la clé sera le nombre de participants et la valeur sera la liste des emplacements avec ce nombre de participants. J'ai écrit ce code mais je ne sais pas pourquoi il se plaint de ma fonction lambda dans le deuxième flux Java... J'ai littéralement passé une heure à y réfléchir et j'apprécierais vraiment toute aide ! Merci d'avance, voici le code :

public SortedMap<Integer, List<String>> slotsPerNofParticipants(String gymnname) throws FitException{
        // map with key = Slot   value = number of participants for the slot
        Map<String, Long> map = this.reservationsColl.stream().filter(r->r.getGym().getName().equals(gymnname))
        .collect(Collectors.groupingBy(r->r.getDayslotStringFormat(),
                Collectors.counting() ));
        // map with key = number of participants  value = list of slot with that number of participants
        Map<Integer,List<String>> res = map.entrySet().stream()
                .collect(Collectors.groupingBy(
                        e->e.getValue.intValue(),
                        Collectors.mapping(e->e.getKey, Collectors.toList() ) ) );
        
        return null;
    }

Comme vous pouvez le voir, j'essaie de convertir la valeur de la première carte (longue) en une clé de type entier à l'aide d'une fonction lambda... Je ne sais pas pourquoi il se plaint de la fonction lambda... Le message d'erreur est : "getkey ne peut pas être analysé ou n'est pas un champ" "getvalue ne peut pas être analysé ou n'est pas un champ"

Solution

Il y a un problème ici. Vous avez quelques fautes de frappe.

  • getvalue 应该是 getvalue()
  • getkey 应该是 getkey()

Codenon corrigé

Map<Integer,List<String>> res = map.entrySet().stream()
                .collect(Collectors.groupingBy(
                        e->e.getValue.intValue(),
                        Collectors.mapping(e->e.getKey, Collectors.toList() ) ) );

Toute autre question causée par des objets doit inclure une déclaration de la classe et quelques exemples de données.

Doit inclure l'entrée et la sortie attendue.

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

Listes Sec

Listes Sec

SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.

PhpStorm version Mac

PhpStorm version Mac

Le dernier (2018.2.1) outil de développement intégré PHP professionnel

Télécharger la version Mac de l'éditeur Atom

Télécharger la version Mac de l'éditeur Atom

L'éditeur open source le plus populaire

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Puissant environnement de développement intégré PHP