Mein Wissen über Listen-Operationen ist von Skriptsprachen. Also habe ich in Java auf etwas Seltsames gestoppt, wenn ich einen Cookie mit einem bestimmten Namen gefunden habe.Java 8 zyklische Rückschluss Warnung
List<Cookie> cookies = Arrays.asList(request.getCookies());
String auth = cookies.stream()
.filter(c -> c.getName().equals("auth"))
.map(Cookie::getValue);
Auf der map
Methode IntelliJ zeigt mir "Cyclic Folgerung".
Java compiler Error:(52, 25) java: incompatible types: no instance(s) of type variable(s) R exist so that java.util.stream.Stream conforms to java.lang.String
Wie die Nachricht sagt, gibt 'map' einen' Stream' zurück und kann keinem 'String' zugewiesen werden. Sie müssen sagen, wie es eine einzelne "String" werden soll. Vielleicht möchten Sie '.findAny(). Get()'? – Holger
Schöne Frage und Antwort, aber ich weiß immer noch nicht, was eine zyklische Schlussfolgerung ist! Werde weiter googeln, das war das erste Ergebnis. – JimLohse
@JimLohse Diese Antwort erklärt, welche zyklische Ableitung ist: http://StackOverflow.com/A/36258012/3142816. Grundsätzlich kann der Typ des inneren Teilausdrucks nicht ohne den Typ des äußeren Teilausdrucks abgeleitet werden, der ohne den Typ des inneren Teilausdrucks nicht abgeleitet werden kann – sorianiv