Étant donné que Java Map n'est pas bidirectionnel, la valeur peut être récupérée à partir de la clé, mais la clé ne peut pas être extraite de la valeur. Il semble y avoir une bibliothèque de types de liste pour cela, mais y a-t-il un bon moyen de le faire ...
Stream.of(fooMap)
.takeUntil(fooItem -> fooItem.getValue() == targetValue)
.findLast().get().getKey();
J'écris ceci en utilisant l'API Lightweight-Stream, mais je ne sais pas si c'est là. Si possible, j'aimerais le trouver avec O (1) ... Je me demande si je dois faire une carte dans la direction opposée.
Recommended Posts