Java 8 zyklische Inferenzwarnung

Meine Kenntnisse über die Liste der Operationen ist von scripting Sprachen. Also in Java hörte ich auf etwas seltsames im Falle der Feststellung von Cookies mit bestimmten Namen.

List<Cookie> cookies = Arrays.asList(request.getCookies());
        String auth = cookies.stream()
                .filter(c -> c.getName().equals("auth"))
                .map(Cookie::getValue);

Auf die map Methode IntelliJ zeigt mir "Zyklische Inferenz".

Java compiler Error:(52, 25) java: inkompatible Typen: Nein-Instanz(en) von variable(N) R existieren, so dass java.util.stream.Stream ist konform zu java.lang.String

Kommentar zu dem Problem - Öffnen
Als die Nachricht sagt, map gibt einen Stream und kann nicht zugewiesen werden String. Sie müssen sagen, wie es werden sollte, ein einzelnes String. Vielleicht möchten Sie verwenden Sie .findAny().get()? Kommentarautor: Holger
Schöne Frage-und Antwort-aber ich weiß noch nicht, was eine zyklische Ableitung! Halten Googeln, das war das erste Ergebnis. Kommentarautor: JimLohse
@JimLohse Diese Antwort erklärt, was eine zyklische Ableitung: stackoverflow.com/a/36258012/3142816. Im Grunde geben der innere Teilausdruck kann nicht geschlossen werden, ohne die Art der äußeren Teilausdruck, kann nicht abgeleitet werden, ohne den Typ der innere Teilausdruck Kommentarautor: sorianiv

InformationsquelleAutor der Frage RobertW | 2014-10-17

Schreibe einen Kommentar