Als «java-8» getaggte Fragen

Verwenden Sie dieses Tag für Fragen zu Java 8, Version 8 (interne Nummer 1.8) der Java-Plattform, die am 18. März 2014 veröffentlicht wurde. In den meisten Fällen sollten Sie auch das Java-Tag angeben.

9
Hat Java SE 8 Paare oder Tupel?
Ich spiele mit faulen Funktionsoperationen in Java SE 8 herum und möchte map einen Index ifür ein Paar / Tupel erstellen (i, value[i]), dann filterbasierend auf dem zweiten value[i]Element, und schließlich nur die Indizes ausgeben. Muss ich noch darunter leiden: Was entspricht dem C ++ - Paar <L, R> in …

3
Erstellt ein Lambda-Ausdruck bei jeder Ausführung ein Objekt auf dem Heap?
Wenn ich eine Sammlung mit dem neuen syntaktischen Zucker von Java 8 durchlaufe, wie z myStream.forEach(item -> { // do something useful }); Entspricht dies nicht dem folgenden "alten Syntax" -Schnipsel? myStream.forEach(new Consumer<Item>() { @Override public void accept(Item item) { // do something useful } }); Bedeutet dies, dass Consumerjedes …
181 java  lambda  java-8 

9
Wie verwende ich ein Java8-Lambda, um einen Stream in umgekehrter Reihenfolge zu sortieren?
Ich benutze Java Lambda, um eine Liste zu sortieren. Wie kann ich es umgekehrt sortieren? Ich habe diesen Beitrag gesehen , möchte aber Java 8 Lambda verwenden. Hier ist mein Code (ich habe * -1 verwendet) als Hack Arrays.asList(files).stream() .filter(file -> isNameLikeBaseLine(file, baseLineFile.getName())) .sorted(new Comparator<File>() { public int compare(File o1, …

4
Welche Java 8 Stream.collect-Entsprechungen sind in der Standard-Kotlin-Bibliothek verfügbar?
In Java 8 gibt Stream.collectes Aggregationen für Sammlungen. In Kotlin existiert dies nicht auf die gleiche Weise, außer vielleicht als Sammlung von Erweiterungsfunktionen in der stdlib. Es ist jedoch nicht klar, welche Äquivalenzen für verschiedene Anwendungsfälle gelten. Am oberen Rand des JavaDoc fürCollectors befinden sich beispielsweise Beispiele für Java 8, …

5
Addieren von BigDecimals mithilfe von Streams
Ich habe eine Sammlung von BigDecimals (in diesem Beispiel a LinkedList), die ich zusammenfügen möchte. Ist es möglich, dafür Streams zu verwenden? Mir ist aufgefallen, dass die StreamKlasse mehrere Methoden hat Stream::mapToInt Stream::mapToDouble Stream::mapToLong Jedes davon hat eine bequeme sum()Methode. Aber, wie wir wissen, floatund doubleArithmetik ist fast immer eine …



6
Gruppieren Sie durch Zählen in der Java 8-Stream-API
Ich versuche, in der Java 8-Stream-API einen einfachen Weg zu finden, um die Gruppierung durchzuführen. Ich komme mit diesem komplexen Weg heraus! List<String> list = new ArrayList<>(); list.add("Hello"); list.add("Hello"); list.add("World"); Map<String, List<String>> collect = list.stream().collect( Collectors.groupingBy(o -> o)); System.out.println(collect); List<String[]> collect2 = collect .entrySet() .stream() .map(e -> new String[] { …

5
Was macht der Pfeiloperator '->' in Java?
Was genau macht ich beim Durchsuchen eines Codes, der auf den Pfeiloperator gestoßen ist? Ich dachte, Java hätte keinen Pfeiloperator. return (Collection<Car>) CollectionUtils.select(listOfCars, (arg0) -> { return Car.SEDAN == ((Car)arg0).getStyle(); }); Details : Java 6, Apache Commons Collection, IntelliJ 12 Update / Antwort: Es stellt sich heraus, dass IntelliJ 12 …

15
Java 8: Lambda-Streams, Filter nach Methode mit Ausnahme
Ich habe ein Problem beim Ausprobieren der Lambda-Ausdrücke von Java 8. Normalerweise funktioniert es gut, aber jetzt habe ich Methoden, die werfen IOException. Am besten sehen Sie sich den folgenden Code an: class Bank{ .... public Set<String> getActiveAccountNumbers() throws IOException { Stream<Account> s = accounts.values().stream(); s = s.filter(a -> a.isActive()); …

8
Intellij - Neuere Java 8-Klassen können nicht verwendet werden - Fehler: "Verwendung der API als @since 1.6+ dokumentiert."
Ich versuche, eine java.lang.function.Functionin meiner Java 8-Codebasis zu verwenden, erhalte jedoch weiterhin den folgenden Fehler in Intellij. Verwendung der als @since 1.6+ dokumentierten API Bei dieser Überprüfung werden alle Verwendungen von Methoden ermittelt, deren Dokumentation das @since-Tag enthält. Dies kann nützlich sein, wenn die Entwicklung unter einer neueren SDK-Version als …

8
Hinzufügen von zwei Java 8-Streams oder eines zusätzlichen Elements zu einem Stream
Ich kann Streams oder zusätzliche Elemente wie folgt hinzufügen: Stream stream = Stream.concat(stream1, Stream.concat(stream2, Stream.of(element)); Und ich kann im Laufe der Zeit neue Dinge hinzufügen: Stream stream = Stream.concat( Stream.concat( stream1.filter(x -> x!=0), stream2) .filter(x -> x!=1), Stream.of(element)) .filter(x -> x!=2); Aber das ist hässlich, weil concates statisch ist. Wenn …




Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.