Suchergebnisse für Anfrage "java-8"
Verwandeln Sie Java Future in eine CompletableFuture
Java 8 stellt vorCompletableFuture, eine neue Implementierung von Future, die komponierbar ist (enthält eine Reihe von thenXxx-Methoden). Ich möchte dies ausschließlich verwenden, aber viele der Bibliotheken, die ich verwenden möchte, geben nur ...
Kompilierungsfehler mit generischen und ternären Operatoren in JDK 7
Beim Schreiben von Java-Code ist ein Kompilierungsfehler aufgetreten, der auf den folgenden Testfall zurückzuführen ist: import java.util.Collections; import java.util.List; public class TernaryFailure { public static List<String> thisWorks() { ...
Rückkehr von Lambda für jeden () in Java
Ich versuche, einige for-each-Schleifen in Lambda zu ändernforEach()-Methoden, um die Möglichkeiten von Lambda-Ausdrücken zu entdecken. Folgendes scheint möglich zu sein: ArrayList<Player> playersOfTeam = new ArrayList<Player>(); for (Player ...
Lambda-Ausdruck und Methode überladen Zweifel
OK, Methodenüberladung ist also eine schlechte Sache. Nun, da dies erledigt ist, nehmen wir an, dass ich es tatsächlich tuewollen So überladen Sie eine Methode wie diese: static void run(Consumer<Integer> consumer) { ...
Die Verwendung eines Semaphors in einer verschachtelten Java 8-Aktion für parallele Streams kann zu DEADLOCK führen. Ist das ein Bug?
Betrachten Sie die folgende Situation: Wir verwenden einen parallelen Java 8-Stream, um eine parallele forEach-Schleife auszuführen, z. IntStream.range(0,20).parallel().forEach(i -> { /* work done here */})Die Anzahl der parallelen Threads wird ...
Ist die Iteration über Collections.synchronizedSet (…) .forEach () garantiert threadsicher?
Wie wir wissen, ist das Durchlaufen einer gleichzeitigen Sammlung standardmäßig nicht threadsicher, daher kann Folgendes nicht verwendet werden: Set<E> set = Collections.synchronizedSet(new HashSet<>()); //fill with data for (E e : set) { ...
Was ist der Grund, warum "synchronisiert" in Java 8-Schnittstellenmethoden nicht zulässig ist?
In Java 8 kann ich leicht schreiben: interface Interface1 { default void method1() { synchronized (this) { // Something } } static void method2() { synchronized (Interface1.class) { // Something } } }Ich werde die vollständige ...
Java 8 Lambda innerhalb eines Lambdas kann keine Variablen vom äußeren Lambda ändern
Angenommen, ich habe eineList<String> und einList<Transfomer>. Ich möchte jeden Transformator auf jede Zeichenfolge in der Liste anwenden. Mit Java 8 Lambdas kann ich Folgendes tun: strings.stream().map(s -> { for(Transformer t : transformers) ...
Stream-API und Warteschlangen: Abonnieren Sie den Stream-Stil von BlockingQueue
Nehmen wir an, wir haben eine Warteschlange BlockingQueue<String> queue= new LinkedBlockingQueue<>();und ein anderer Thread schreibt Werte hinein, dann lesen wir es so while (true) { String next = queue.take(); System.out.println("next ...
Warum ist "final" in Java 8-Schnittstellenmethoden nicht zulässig?
Eine der nützlichsten Funktionen von Java 8 sind die neuendefault Methoden an Schnittstellen. Es gibt im Wesentlichen zwei Gründe (es kann auch andere Gründe geben), warum sie eingeführt wurden: Bereitstellung der tatsächlichen ...