streamy

SummaryStatistics dla streamów. { weekly #4 }

Dziś krótki wpis między innymi o tym co daje stosowanie mapowanie typu mapToInt (oraz Long, Double) zamiast zwykłego mapowania. Jednym z powodów zastosowania strumienia jest chęć uzyskania prostego wyniku działania dla elementów danej kolekcji. Wyobraźmy sobie, że chcemy uzyskać np. średnią wieku osób, które przechowujemy w zbiorze. Jak podejść do takiego zadania? Używając metody map() możemy jedynie uzyskać wynik count(), min() czy max(). […]

Grupowanie kolekcji w streamach

Streamy to zdecydowanie jedno z moich ulubionych rozwiązań w Javie. Parafrazując wieszcza – streamy się docenia, gdy się je straci. Gdy zacząłem programować w Apexie, od samego początku odczułem brak tego co strumienie oferują. Jedną z często używanych przeze ze mnie funkcji jest grupowanie, czyli metoda groupingBy z Collectors w pakiecie java.util.stream. Służy ona do tworzenia map z list czy zbiorów. Wracając do wspomnianego Apexa, chcąc z listy Tasków stworzyć mapę, z kluczem […]

Java. Pytania rekrutacyjne dla Juniora: Czy streamy (strumienie) są lazy i co to znaczy?

Kontynuując serię pytań o strumieniach, warto rozwinąć kwestię czasu, w którym wykonują się operacje pośrednie.  Operacje pośrednie w strumieniu są lazy Operacje pośrednie są lazy, czyli mają wartościowanie leniwe. Mianowicie każda pośrednia operacja nie jest wykonywana dopóki nie zostanie wywołana operacja końcowa. Operacje pośrednie dostarczają jedynie nowe strumienie. Jak już wspomniałem we wcześniejszym wpisie nie jest wymagane użycie jakiejkolwiek operacji końcowej, tak więc zadeklarowane operacje […]

Java. Pytania rekrutacyjne dla Juniora: Rodzaje operacji w streamach (strumieniach).

Streamy w Javie wprowadzano w wersji 8 i znacznie ułatwiły przeprowadzanie wielu operacji na kolekcjach, często zastępując mniej czytelne pętle. I choć idea strumieni jest w miarę jasna warto przed rozmową kwalifikacyjną przypomnieć sobie trochę szczegółów o budowie i rodzajach operacji na streamach. Dwa rodzaje operacji na streamach – pośrednie i końcowe. Struktura strumienia, czy też jego rurociąg (ang. pipeline), składa się z trzech elementów: źródła (np. kolekcji) przekształconego w strumień; […]

Przewiń do góry