Pytania otagowane jako java-stream

Użyj tego tagu w przypadku pytań związanych z korzystaniem z interfejsu API Stream. Został wprowadzony w Javie 8 i obsługuje operacje w stylu funkcjonalnym na strumieniach wartości, takich jak potoki filtruj-mapuj-zmniejszaj w kolekcjach.

9
Czy Java SE 8 ma pary lub krotki?
Bawię się leniwymi operacyjnymi funkcjami w Javie SE 8 i chcę mapindeksować ido pary / krotki (i, value[i]), a następnie filterbazować na drugim value[i]elemencie, a na koniec wyprowadzać tylko indeksy. Czy nadal muszę cierpieć z tego powodu: Jaki jest odpowiednik pary C ++ <L, R> w Javie? w nowej, odważnej …

9
Jak użyć lambda Java8 do sortowania strumienia w odwrotnej kolejności?
Używam java lambda do sortowania listy. jak mogę to posortować w odwrotny sposób? Widziałem ten post , ale chcę użyć java 8 lambda. Oto mój kod (użyłem * -1) jako hack Arrays.asList(files).stream() .filter(file -> isNameLikeBaseLine(file, baseLineFile.getName())) .sorted(new Comparator<File>() { public int compare(File o1, File o2) { int answer; if (o1.lastModified() …


5
Dodawanie BigDecimals przy użyciu strumieni
Mam kolekcję BigDecimals (w tym przykładzie a LinkedList), którą chciałbym dodać. Czy można do tego wykorzystać strumienie? Zauważyłem, że Streamklasa ma kilka metod Stream::mapToInt Stream::mapToDouble Stream::mapToLong Z których każdy ma wygodną sum()metodę. Ale, jak wiemy, floati doublearytmetyka jest prawie zawsze zły pomysł. Czy jest więc wygodny sposób podsumowania BigDecimals? To …


8
Dodanie dwóch strumieni Java 8 lub dodatkowego elementu do strumienia
Mogę dodać strumienie lub dodatkowe elementy, na przykład: Stream stream = Stream.concat(stream1, Stream.concat(stream2, Stream.of(element)); I mogę dodawać nowe rzeczy na bieżąco, na przykład: Stream stream = Stream.concat( Stream.concat( stream1.filter(x -> x!=0), stream2) .filter(x -> x!=1), Stream.of(element)) .filter(x -> x!=2); Ale to jest brzydkie, ponieważ concatjest statyczne. Gdyby concatbyła to metoda …

9
Czy mam zwrócić kolekcję czy strumień?
Załóżmy, że mam metodę, która zwraca widok tylko do odczytu do listy członków: class Team { private List < Player > players = new ArrayList < > (); // ... public List < Player > getPlayers() { return Collections.unmodifiableList(players); } } Ponadto przypuśćmy, że wszystko, co robi klient, to powtórzenie …

4
Czy można przesłać strumień w Javie 8?
Czy można przesyłać strumień w Javie 8? Powiedzmy, że mam listę obiektów, mogę zrobić coś takiego, aby odfiltrować wszystkie dodatkowe obiekty: Stream.of(objects).filter(c -> c instanceof Client) Po tym jednak, jeśli chcę coś zrobić z klientami, musiałbym obsadzić każdego z nich: Stream.of(objects).filter(c -> c instanceof Client) .map(c -> ((Client) c).getID()).forEach(System.out::println); To …
160 java  java-8  java-stream 


26
Odwrotna kolejność strumieni Java 8
Pytanie ogólne: Jaki jest właściwy sposób odwrócenia strumienia? Zakładając, że nie wiemy, z jakiego typu elementów składa się strumień, jaki jest ogólny sposób odwrócenia dowolnego strumienia? Konkretne pytanie: IntStreamzapewnia metodę zakresu do generowania liczb całkowitych w określonym zakresie IntStream.range(-range, 0), teraz, gdy chcę to odwrócić, przełączanie zakresu od 0 do …

14
Kompresowanie strumieni za pomocą JDK8 z lambdą (java.util.stream.Streams.zip)
W JDK 8 z lambdą b93 istniała klasa java.util.stream.Streams.zip w b93, która mogłaby zostać użyta do zip strumieni (jest to zilustrowane w samouczku Exploring Java8 Lambdas. Part 1 autorstwa Dhananjay Nene ). Ta funkcja: Tworzy leniwy i sekwencyjny połączony Stream, którego elementy są wynikiem połączenia elementów dwóch strumieni. Jednak w …

2
Jak zapewnić kolejność przetwarzania w strumieniach java8?
Chcę przetwarzać listy wewnątrz XMLobiektu Java. Muszę zadbać o przetworzenie wszystkich elementów w celu ich otrzymania. Czy powinienem zatem dzwonić sequentialdo każdego, streamktórego używam? list.stream().sequential().filter().forEach() Czy wystarczy po prostu użyć strumienia, o ile nie używam równoległości? list.stream().filter().forEach()
148 java  java-8  java-stream 

10
Czy możesz podzielić strumień na dwa strumienie?
Mam zestaw danych reprezentowany przez strumień Java 8: Stream<T> stream = ...; Widzę, jak to przefiltrować, aby uzyskać losowy podzbiór - na przykład Random r = new Random(); PrimitiveIterator.OfInt coin = r.ints(0, 2).iterator(); Stream<T> heads = stream.filter((x) -> (coin.nextInt() == 0)); Widzę również, jak mogę zredukować ten strumień, aby uzyskać …
146 java  java-8  java-stream 


7
Strumienie Java 8 - zbieraj a zmniejszaj
Kiedy użyjesz collect()vs reduce()? Czy ktoś ma dobre, konkretne przykłady, kiedy zdecydowanie lepiej jest iść w jedną lub drugą stronę? Javadoc wspomina, że ​​metoda collect () jest modyfikowalną redukcją . Biorąc pod uwagę, że jest to redukcja zmienna, zakładam, że wymaga synchronizacji (wewnętrznej), co z kolei może mieć negatywny wpływ …
143 java  java-8  java-stream 

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.