• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Używanie wyrażeń lambda

Object Storage Arubacloud
0 głosów
297 wizyt
pytanie zadane 24 października 2018 w Java przez Potopiec Obywatel (1,550 p.)
Używacie często wyrażeń lambda w swoich projektach, czy raczej ich unikacie? Można je "olać"? Kompletnie mi nie wchodzą i się zastanawiam czy jest sens forsować , czy lepiej jednak poświęcić uwagę na inne rzeczy i kiedy indziej do nich wrócić?

Pozdrawiam

4 odpowiedzi

+2 głosów
odpowiedź 24 października 2018 przez marcin99b Szeryf (82,180 p.)
Nie wiem jak w javie (widze w kategorii)
Ale w c# dość często, głównie ze względu na linq, po prostu często lepiej (szybciej i czytelniej) walnąć prostą lambde niż bawić sie w mase pętli

Np do zrobienia prostego Where(x => x == coś tam).SelectMany(x => coś tam).Distinct().ForEach(coś tam)
używając zwykłego kodu, z pętlami itd... mógłby powstać całkiem skomplikowany kod
a tak to mieści sie w jednej linijce albo kilku wąskich linijkach

Jak pierwszy raz to zobaczyłem, to niezbyt ogarniałem co to za magia
Ale po zrobieniu kilku przykładów można ogarnąć jak to działa
+2 głosów
odpowiedź 24 października 2018 przez miro Pasjonat (23,870 p.)
Wydaje mi się, że lambdy/streamy to już jest wymóg dla juniorów. Warto się uczyć ponieważ kod jest bardziej zwarty i  zrozumiały. Daje więcej frajdy. Łatwo można przerobić stream na parallelStream(). Sam zobacz:
https://www.youtube.com/watch?v=1OpAgZvYXLQ

Tak z ciekawości się zastanawiam, co byś się uczył zamian lambd?
komentarz 25 października 2018 przez Potopiec Obywatel (1,550 p.)
Pewnie się domyślasz że, dość zielony w temacie jestem i może zaczynam od dupy strony ale architektury się czepiłem . Struktury danych ,algorytmy i takie historie. A że lambdy są stosunkowo "młode" to myślałem że nie mają większego znaczenia. Dzięki za link , na pewno obejrzę jak będę miał chwile .
+2 głosów
odpowiedź 24 października 2018 przez RafalS VIP (122,820 p.)

Lamby są super:

List<String> myList =
    Arrays.asList("a1", "a2", "b1", "c2", "c1");

myList
    .stream()
    .filter(s -> s.startsWith("c"))
    .map(String::toUpperCase)
    .sorted()
    .forEach(System.out::println);

Taki kod jest czytelniejszy od klepania do wszystkiego pętli.

Jakieś zwykłe sortowanie obiektów:

listDevs.sort((Developer o1, Developer o2)->o1.getAge()-o2.getAge());

To samo bez lambd:

listDevs.sort(new Comparator<Developer>() {
		@Override
		public int compare(Developer o1, Developer o2) {
			return o2.getAge() - o1.getAge();
		}
	});	

Naucz się lambd, sa proste i ułatwiają życie.

+1 głos
odpowiedź 24 października 2018 przez mbabane Szeryf (79,280 p.)
Raczej warto, dlatego, że lambda to paradygmat programowania funkcyjnego, który zdaje się, że może być wykorzystywany co raz częściej. Ponadto od javy 8 bez lambd po prostu nic nie zrobisz, albo będzie Ci bardzo trudno.

Podobne pytania

0 głosów
1 odpowiedź 157 wizyt
pytanie zadane 5 listopada 2019 w Java przez aspoka Mądrala (5,290 p.)
0 głosów
2 odpowiedzi 258 wizyt
pytanie zadane 26 lipca 2016 w Java przez NYC_fan Początkujący (260 p.)
0 głosów
1 odpowiedź 300 wizyt
pytanie zadane 17 października 2020 w Java przez amtrax Dyskutant (9,630 p.)

92,568 zapytań

141,420 odpowiedzi

319,622 komentarzy

61,954 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...