Questions marquées «java-stream»

Utilisez cette balise pour les questions liées à l'utilisation de l'API Stream. Il a été introduit dans Java 8 et prend en charge les opérations de style fonctionnel sur les flux de valeurs, telles que les pipelines filter-map-reduction sur les collections.

6
Comment vérifier si un flux Java 8 est vide?
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 …

15
Java 8 Stream avec traitement par lots
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 …

6
Trier une liste avec stream.sorted () en Java
Je suis intéressé par le tri d'une liste à partir d'un flux. Voici le code que j'utilise: list.stream() .sorted((o1, o2)->o1.getItem().getValue().compareTo(o2.getItem().getValue())) .collect(Collectors.toList()); Est-ce que je manque quelque chose? La liste ne trie pas. Il doit trier les listes en fonction de l'élément avec la valeur la plus basse. for (int i …


5
Pourquoi ne puis-je pas mapper des entiers sur des chaînes lors de la diffusion à partir d'un tableau?
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 …

7
Différence entre findAny () et findFirst () dans Java 8
На этот вопрос есть ответы на Stack Overflow на русском : Какие различия между findFirst и findAny в Java 8? Je suis peu confus entre Stream#findAny()et Stream#findFirst()de l' StreamAPI dans Java 8. Ce que j'ai compris, c'est que les deux renverront le premier élément correspondant du flux, par exemple, lorsqu'ils …

6
Est-il possible d'utiliser l'API Java 8 Stream sur l'API Android <24?
J'ai lu cet article ici. Mais je ne peux toujours pas exécuter de code contenant les fonctionnalités de l'API Java 8 Stream telles que les suivantes sur minSdkVersion &lt;24. List&lt;Car&gt; newCars = cars.stream() .filter(s -&gt; s.getColor().equals("red")) .collect(Collectors.toList()); Cela ne fonctionne pas en raison du message d'erreur L'appel nécessite le niveau …

5
Pourquoi findFirst () lance-t-il une NullPointerException si le premier élément qu'il trouve est nul?
Pourquoi cela jette- java.lang.NullPointerExceptiont-il un ? List&lt;String&gt; strings = new ArrayList&lt;&gt;(); strings.add(null); strings.add("test"); String firstString = strings.stream() .findFirst() // Exception thrown here .orElse("StringWhenListIsEmpty"); //.orElse(null); // Changing the `orElse()` to avoid ambiguity Le premier élément stringsest null, qui est une valeur parfaitement acceptable. De plus, findFirst()retourne une option , ce qui …

5
Comment gérer le flux jdk8 pour les valeurs nulles
Bonjour chers développeurs Java, Je sais que le sujet peut être un peu in advancecar le JDK8 n'est pas encore sorti (et pas pour l'instant en tout cas ..) mais je lisais quelques articles sur les expressions Lambda et en particulier la partie liée à la nouvelle API de collection …

4
'Optional.get ()' sans vérification 'isPresent ()'
J'ai le code de recherche suivant en Java: return getTableViewController().getMe().getColumns().stream().filter($-&gt;Database.equalsColumnName($.getId(), columnId)).findFirst().get(); Je souhaitais trouver la colonne par nom et renvoyer la première trouvée. Je comprends qu'il y a un cas où rien n'a été trouvé et que cela devrait être traité, mais comment? Est-ce ce qu'il veut en jurant: 'Optional.get()' …

12
Java 8 lambda obtient et supprime un élément de la liste
Étant donné une liste d'éléments, je veux obtenir l'élément avec une propriété donnée et le supprimer de la liste. La meilleure solution que j'ai trouvée est: ProducerDTO p = producersProcedureActive .stream() .filter(producer -&gt; producer.getPod().equals(pod)) .findFirst() .get(); producersProcedureActive.remove(p); Est-il possible de combiner get et remove dans une expression lambda?


14
Java 8, Streams pour trouver les éléments en double
J'essaie de lister les éléments en double dans la liste d'entiers, par exemple, List&lt;Integer&gt; numbers = Arrays.asList(new Integer[]{1,2,1,3,4,4}); using Streams of jdk 8. Quelqu'un at-il essayé. Pour supprimer les doublons, nous pouvons utiliser l'API distinct (). Mais qu'en est-il de trouver les éléments dupliqués? Quelqu'un peut-il m'aider?

3
Pourquoi le flux parallèle avec lambda dans l'initialiseur statique provoque-t-il un blocage?
Je suis tombé sur une situation étrange où l'utilisation d'un flux parallèle avec un lambda dans un initialiseur statique prend apparemment une éternité sans utilisation du processeur. Voici le code: class Deadlock { static { IntStream.range(0, 10000).parallel().map(i -&gt; i).count(); System.out.println("done"); } public static void main(final String[] args) {} } Cela …

3
Opérations de flux intermédiaires non évaluées sur le nombre
Il semble que j'ai du mal à comprendre comment Java compose les opérations de flux dans un pipeline de flux. Lors de l'exécution du code suivant public static void main(String[] args) { StringBuilder sb = new StringBuilder(); var count = Stream.of(new String[]{"1", "2", "3", "4"}) .map(sb::append) .count(); System.out.println(count); System.out.println(sb.toString()); } …
33 java  java-stream 

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.