Utilisez cette balise pour les questions spécifiques à Java 8 qui est la version 8 (numéro interne 1.8) de la plate-forme Java, publiée le 18 mars 2014. Dans la plupart des cas, vous devez également spécifier la balise java.
Comment puis-je vérifier si a Streamest vide et lever une exception si ce n'est pas le cas, en tant qu'opération non terminale? En gros, je cherche quelque chose d'équivalent au code ci-dessous, mais sans matérialiser le flux entre les deux. En particulier, le contrôle ne doit pas avoir lieu avant …
J'ai un gros fichier qui contient une liste d'articles. Je voudrais créer un lot d'articles, faire une requête HTTP avec ce lot (tous les éléments sont nécessaires en tant que paramètres dans la requête HTTP). Je peux le faire très facilement avec une forboucle, mais en tant qu'amoureux de Java …
J'essaie de comprendre la ifPresent()méthode de l' OptionalAPI dans Java 8. J'ai une logique simple: Optional<User> user=... user.ifPresent(doSomethingWithUser(user.get())); Mais cela entraîne une erreur de compilation: ifPresent(java.util.functionError:(186, 74) java: 'void' type not allowed here) Bien sûr, je peux faire quelque chose comme ça: if(user.isPresent()) { doSomethingWithUser(user.get()); } Mais c'est exactement comme …
En cherchant dans la spécification du langage Java pour répondre à cette question , j'ai appris que Avant qu'une classe ne soit initialisée, sa superclasse directe doit être initialisée, mais les interfaces implémentées par la classe ne sont pas initialisées. De même, les superinterfaces d'une interface ne sont pas initialisées …
Quel est le garbage collector par défaut pour Java 8? Lorsque je vérifie les Beans JMX, ils révèlent qu'il s'agit du collecteur parallèle pour la nouvelle génération et de l'ancien collecteur série pour l'ancienne génération.
J'utilise JDK-8 (x64). Pour Arrays.sort(primitives), j'ai trouvé ce qui suit dans la documentation Java: L'algorithme de tri est un double-pivot Quicksort par Vladimir Yaroslavskiy, Jon Bentley, et Joshua Bloch.` Pour Collections.sort(objets) j'ai trouvé ce "Timsort": Cette implémentation est un mergesort stable, adaptatif et itératif ... Cette implémentation vide la liste …
Une interface en Java est similaire à une classe, mais le corps d'une interface ne peut inclure que des méthodes abstraites et des finalchamps (constantes). Récemment, j'ai vu une question qui ressemble à ceci interface AnInterface { public default void myMethod() { System.out.println("D"); } } Selon la définition de l'interface, …
Si je me souviens bien, avant Java 8, la capacité par défaut ArrayListétait de 10. Étonnamment, le commentaire sur le constructeur par défaut (void) dit toujours: Constructs an empty list with an initial capacity of ten. De ArrayList.java: /** * Shared empty array instance used for default sized empty instances. …
Selon le document de lien suivant: Implémentation Java HashMap Je suis confus avec la mise en œuvre de HashMap(ou plutôt, une amélioration dans HashMap). Mes requêtes sont: d'abord static final int TREEIFY_THRESHOLD = 8; static final int UNTREEIFY_THRESHOLD = 6; static final int MIN_TREEIFY_CAPACITY = 64; Pourquoi et comment ces …
Ce code fonctionne (pris dans le Javadoc): List<Integer> numbers = Arrays.asList(1, 2, 3, 4); String commaSeparatedNumbers = numbers.stream() .map(i -> i.toString()) .collect(Collectors.joining(", ")); Celui-ci ne peut pas être compilé: int[] numbers = {1, 2, 3, 4}; String commaSeparatedNumbers = Arrays.stream(numbers) .map((Integer i) -> i.toString()) .collect(Collectors.joining(", ")); IDEA me dit que …
Je viens de remplacer sdans l'expression lambda suivante par _: s -> Integer.parseInt(s) Le compilateur Eclipse dit: «_» ne doit pas être utilisé comme identifiant, car il s'agit d'un mot clé réservé à partir du niveau source 1.8. Je n'ai trouvé aucune explication dans le JLS §3.9 Structure lexicale / …
Java 8 introduit CompletableFuture, une nouvelle implémentation de Future qui est composable (inclut un tas de méthodes thenXxx). Je voudrais l'utiliser exclusivement, mais la plupart des bibliothèques que je souhaite utiliser ne renvoient que des Futureinstances non composables . Existe-t-il un moyen d'envelopper une Futureinstance retournée dans un CompleteableFutureafin que …
Travaillant en Java 8, j'ai TreeSetdéfini comme ceci: private TreeSet<PositionReport> positionReports = new TreeSet<>(Comparator.comparingLong(PositionReport::getTimestamp)); PositionReport est une classe assez simple définie comme ceci: public static final class PositionReport implements Cloneable { private final long timestamp; private final Position position; public static PositionReport create(long timestamp, Position position) { return new PositionReport(timestamp, …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.