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.
J'ai une liste d'objets à dire car. Je veux filtrer cette liste en fonction d'un paramètre en utilisant Java 8. Mais si le paramètre est null, il jette NullPointerException. Comment filtrer les valeurs nulles? Le code actuel est le suivant requiredCars = cars.stream().filter(c -> c.getName().startsWith("M")); Cela jette NullPointerExceptionsi getName()revient null.
Est-il possible de diffuser un flux en Java 8? Disons que j'ai une liste d'objets, je peux faire quelque chose comme ceci pour filtrer tous les objets supplémentaires: Stream.of(objects).filter(c -> c instanceof Client) Après cela, si je veux faire quelque chose avec les clients, j'aurais besoin de lancer chacun d'eux: …
En Java, est-il possible qu'un lambda accepte plusieurs types différents? Ie: Fonctionne à une seule variable: Function <Integer, Integer> adder = i -> i + 1; System.out.println (adder.apply (10)); Varargs fonctionnent également: Function <Integer [], Integer> multiAdder = ints -> { int sum = 0; for (Integer i : ints) …
Comment puis-je sérialiser élégamment un lambda? Par exemple, le code ci-dessous lance un NotSerializableException. Comment puis-je résoudre ce problème sans créer une SerializableRunnableinterface «factice»? public static void main(String[] args) throws Exception { File file = Files.createTempFile("lambda", "ser").toFile(); try (ObjectOutput oo = new ObjectOutputStream(new FileOutputStream(file))) { Runnable r = () -> …
J'ai lu la documentation, mais je n'arrive toujours pas à savoir quand je devrais utiliser l'un ou l'autre: OffsetDateTime ZonedDateTime Selon la documentation OffsetDateTimedoit être utilisé lors de l'écriture de la date dans la base de données, mais je ne comprends pas pourquoi.
Je suis tombé sur un nouveau terme en Java 8: "interface fonctionnelle". Je n'ai pu en trouver qu'une seule utilisation en travaillant avec des expressions lambda . Java 8 fournit des interfaces fonctionnelles intégrées et si nous voulons définir une interface fonctionnelle, nous pouvons utiliser l' @FunctionalInterfaceannotation. Cela nous permettra …
Question générale: Quelle est la bonne façon d'inverser un flux? En supposant que nous ne sachions pas de quel type d'éléments ce flux se compose, quel est le moyen générique d'inverser un flux? Question spécifique: IntStreamfournit une méthode de plage pour générer des entiers dans une plage spécifique IntStream.range(-range, 0), …
J'essaie simplement de convertir une chaîne de date en un objet DateTime dans Java 8. En exécutant les lignes suivantes: DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); LocalDateTime dt = LocalDateTime.parse("20140218", formatter); J'obtiens l'erreur suivante: Exception in thread "main" java.time.format.DateTimeParseException: Text '20140218' could not be parsed: Unable to obtain LocalDateTime from TemporalAccessor: {},ISO …
Dans JDK 8 avec lambda b93, il y avait une classe java.util.stream.Streams.zip dans b93 qui pouvait être utilisée pour compresser les flux (ceci est illustré dans le tutoriel Exploring Java8 Lambdas. Part 1 par Dhananjay Nene ). Cette fonction: Crée un Stream combiné paresseux et séquentiel dont les éléments sont …
Je veux traiter des listes dans un XMLobjet java. Je dois m'assurer du traitement de tous les éléments afin de les recevoir. Dois-je donc faire appel sequentialà chacun streamque j'utilise? list.stream().sequential().filter().forEach() Ou est-ce suffisant d'utiliser simplement le flux tant que je n'utilise pas de parallélisme? list.stream().filter().forEach()
J'ai un ensemble de données représenté par un flux Java 8: Stream<T> stream = ...; Je peux voir comment le filtrer pour obtenir un sous-ensemble aléatoire - par exemple Random r = new Random(); PrimitiveIterator.OfInt coin = r.ints(0, 2).iterator(); Stream<T> heads = stream.filter((x) -> (coin.nextInt() == 0)); Je peux également …
Les flux Java 8 sont-ils similaires aux observables RxJava? Définition du flux Java 8: Les classes du nouveau java.util.streampackage fournissent une API Stream pour prendre en charge les opérations de style fonctionnel sur les flux d'éléments.
J'ai du mal à comprendre l' Streaminterface de Java 8, en particulier lorsqu'il s'agit de SpliteratoretCollector interfaces . Mon problème est que je ne peux tout simplement pas comprendre Spliteratoret les Collectorinterfaces encore, et par conséquent, l' Streaminterface est encore quelque peu obscure pour moi. Qu'est-ce qu'un Spliteratoret unCollector , …
Je joue avec Java 8 pour découvrir comment fonctionne en tant que citoyen de première classe. J'ai l'extrait suivant: package test; import java.util.*; import java.util.function.*; public class Test { public static void myForEach(List<Integer> list, Function<Integer, Void> myFunction) { list.forEach(functionToBlock(myFunction)); } public static void displayInt(Integer i) { System.out.println(i); } public static …
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.