preguntar acerca de java-stream

6
réponses

Comment additionner une liste d’entiers avec des flux java?

Je veux additionner une liste d'entiers. Cela fonctionne comme suit, mais la syntaxe ne se sent pas bien. Le code pourrait-il être optimisé? Map<String, Integer> integers; integers.values().stream().mapToInt(i -> i).sum(); ... …
demandé sur 1970-01-01 00:33:35
9
réponses

Pouvez-vous diviser un flux en deux flux?

J'ai un ensemble de données représenté par un flux Java 8: Stream<T> stream = ...; Je peux voir comment filtrer pour obtenir un sous-ensemble aléatoire - par exemple Random r = new Random(); PrimitiveIterator.OfInt coin = r.ints(0, 2).iter …
demandé sur 1970-01-01 00:33:33
2
réponses

Comment conserver l’ordre d’itération d’une liste lors de l’utilisation de Collections.toMap() sur un flux?

Je crée un Map à partir d'un List comme suit: List<String> strings = Arrays.asList("a", "bb", "ccc"); Map<String, Integer> map = strings.stream() .collect(Collectors.toMap(Function.identity(), String::length)); Je veux garder le …
demandé sur 1970-01-01 00:33:35
7
réponses

Prenez chaque nième élément d’un flux Java 8

Supposons que j'ai une liste comme celle-ci: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Est-il possible d'utiliser un flux Java 8 pour prendre chaque deuxième élément de cette liste pour obtenir ce qui suit? [1, 3, 5, 7, 9] Ou peut-être même un élément s …
demandé sur 1970-01-01 00:33:35
2
réponses

Est le DoubleStream de Java-8.méthode sum () stable lorsqu’il est exécuté en parallèle?

Je suis curieux de connaître la construction suivante dans Java 8: double[] doubles = //... double sum = DoubleStream.of(doubles).parallel().sum(); Pour aller droit au but: la valeur de sum toujours la même, par exemple lorsqu'il est exécuté …
demandé sur 1970-01-01 00:33:34
7
réponses

Trouver une valeur enum avec L’API Java 8 Stream

Supposons qu'il existe une énumération simple appelée Type définie comme ceci: enum Type{ X("S1"), Y("S2"); private String s; private Type(String s) { this.s = s; } } Trouver l'énumération correcte pour s donné est t …
demandé sur 1970-01-01 00:33:35
2
réponses

Utilisation récursive du flux.flatMap()

Considérons la classe suivante: public class Order { private String id; private List<Order> orders = new ArrayList<>(); @Override public String toString() { return this.id; } // getters & setters } …
demandé sur 1970-01-01 00:33:35
2
réponses

Comment puis-je créer un séparateur de pagination à usage général?

Je voudrais pouvoir traiter un flux java en lecture à partir d'une source qui doit être accessible dans les pages. Comme première approche, j'ai implémenté un itérateur de pagination qui demandait simplement des pages lorsque la page actuelle était à …
demandé sur 1970-01-01 00:33:36
8
réponses

Java 8 flux, obtenir la tête et la queue

Java 8 a introduit une classe Stream qui ressemble à Stream de Scala, une puissante construction paresseuse utilisant laquelle il est possible de faire quelque chose comme ceci de manière très concise: def from(n: Int): Stream[Int] = n #:: from(n+ …
demandé sur 1970-01-01 00:33:33
4
réponses

Convertir un flux en IntStream

J'ai l'impression qu'il me manque quelque chose ici. Je me suis retrouvé à faire ce qui suit private static int getHighestValue(Map<Character, Integer> countMap) { return countMap.values().stream().mapToInt(Integer::intValue).max().getAsI …
demandé sur 1970-01-01 00:33:35