Tag Archives: java 8

Implementujemy własny Collector #19

W ostatnim wpisie poznaliśmy metodę collect i różnego rodzaju gotowe kolektory, które możemy przekazać do tej metody. Korzystaliśmy z tak prostego zapisu jak:

otrzymując z naszego streamu listę elementów. W Java 8 znajdziemy dużo gotowych kolektorów, ale możemy także zaimplementować własny, Zobaczmy jak to zrobić.

Steram i użycie findFirst(), findAny() oraz Optional #16

W ostatniej części kursu przyglądaliśmy się metodom anyMatch, allMatch oraz noneMatch. Za ich pomocą mogliśmy stwierdzić czy jakieś obiekt istnieje w naszej kolekcji. Zwracały one jednak tylko wartość boolean. Dzisiaj przedstawiam wam metody findFirst() oraz findAny(), które zwracają tajemniczy obiekt Optional<T> 😉

Zasięg zmiennych lokalnych i pól w lambdach #11

Dzisiaj zajmiemy się zakresem lambd i ich dostępem do zmiennych lokalnych i pól w klasach. Na konkretnych przykładach sprawdzimy jaki zakres mają lambdy. Temat bardzo prosty, ale bardzo istotny. Szczególnie dla początkujących, którzy często irytują się, że coś nie działa 😉 Ps. Sam tak miałem 🙂

Referencje Metod – Method References w Java 8 #10

W Javie 8 mamy bardzo ciekawą możliwość stosowania referencji do metod. Służy do tego symbol :: (podwójnego dwukropka). Używamy ich jak wyrażeń lambdy. Najważniejsze, jest to,  że w ten sposób nasze metody są reużywalne. Raz zdefiniowane mogą nam posłużyć w różnych miejscach kodu.

Pozostałe interfejsy funkcjonalne #9

      Brak komentarzy do Pozostałe interfejsy funkcjonalne #9

Przed nami ostatnia partia interfejsów funkcjonalnych, jakie znalazły się w Javie 8. Są to wyspecjalizowane wersje interfejsów, które już omówiliśmy w poprzednich odcinkach. Zdefiniowane są na konkretnych typach i głównie tym się różnią od generycznych interfejsów, które omówiliśmy.

Omówienie interfejsu BiPredicate #6

      Brak komentarzy do Omówienie interfejsu BiPredicate #6

Interfejs BiPredicate<T,U> realizuje te same zadania co Predicate<T> opisany w poprzedniej części. Różnica jest taka, że tym razem możemy przekazać do niego 2 argumenty i wykonać na nich operację logiczną. Zobaczmy jak wygląda zatem BiPredicate<T,U>, zaskoczenia nie będzie, ale warto poćwiczyć 😉

Omówienie interfejsów BiConsumer, BiFunction, BinaryOperator #4

W Java 8 istnieje pokaźna grupa interfejsów funkcjonalnych, które pokrótce będziemy omawiać. Warto zapoznać się ze wszystkimi i wiedzieć, że takie istnieją. Okazuje się, że odpowiadają one na niemalże wszystkie potrzeby programistów i tworzenie swoich interfesjów może być zbędne.