Wyrażenia Lambda są dodawane w języku Java 8. Chcę zrozumieć, dlaczego jest to ważne. Co to znaczy dla programisty Javy, który jeszcze nie ma styczności z funkcjonalnymi idiomami programowania? Czy to znaczy, że mogę napisać kod, który działa lepiej lub skaluje się masowo, czy też sprawia, że kod jest mniej szczegółowy. Albo wszystko.Wyrażenia Java Lambda
Odpowiedz
Oracle ma już tutorial na ten temat. Wymienia kilka wspaniałych przypadków użycia.
Zanim znalazłem łącze, miałem zamiar powiedzieć, że wyrażenia lambda pozwalają ci przekazać "funkcje" do kodu. Dzięki temu możesz łatwiej napisać kod, ponieważ potrzebowaliśmy do tego całego bałaganu interfejsów/klas abstrakcyjnych. Załóżmy na przykład, że masz kod, który ma złożoną logikę pętli/warunkową lub przepływ pracy. Na pewnym etapie chcesz zrobić coś innego. Używając wyrażeń lambda, możesz po prostu przekazać to "coś innego". Przeczytaj samouczek. To bardzo jasne.
Jestem nieco zdezorientowany ponieważ używasz fraz - "* Zanim znalazłem link, zamierzałem powiedzieć, że *". Więc po znalezieniu linku Oracle Twoja opinia/myśl się zmieniła? Chodzi mi o to, że myślałeś źle lub "mniej" i po przeczytaniu tego linku zrozumiałeś, że jest w tym coś więcej. Powodem, dla którego pytam, jest dla mnie to, o czym wspomniałem wcześniej, było właściwe i istota tego związku, więc chcę wiedzieć, czy nie zdawałem sobie sprawy z pełnego potencjału wyrażeń lambda. – hagrawal
Miałem na myśli, że to był mój język. Samouczek określa to lepiej –
- 1. Wyrażenia Lambda
- 2. Pobierz klasę otaczającą wyrażenia lambda Java
- 3. umożliwienie wyrażenia lambda
- 4. Wyrażenia VB.NET Lambda
- 5. Niepoprawne wcięcie Wyrażenia Lambda
- 6. połączeń wewnątrz lambda wyrażenia
- 7. W klauzuli wyrażenia lambda
- 8. Wymień parametru lambda wyrażenia
- 9. Wyrażenia kontra Lambda
- 10. możliwe rekursywne wyrażenia lambda?
- 11. Wyrażenia Lambda: zachowanie kompilatora
- 12. Czy będzie możliwe opisanie wyrażenia lambda w Java 9?
- 13. Konwersja drzewa Lambda do wyrażenia
- 14. Jak porównać dwa wyrażenia lambda?
- 15. Wyrażenia Lambda dla klas abstrakcyjnych
- 16. żywotność wyrażenia lambda w rdzy
- 17. Związek Wybierz używając wyrażenia lambda
- 18. Wyrażenia lambda i funkcje wyższego rzędu
- 19. Konwersja Array iteracji do wyrażenia lambda
- 20. Jak odwzorować wyrażenia lambda w Javie
- 21. Lambda Parametr nie w zakresie - podczas budowania binarnego wyrażenia lambda
- 22. ThreadPool.QueueUserWorkItem z wyrażenia lambda i metody anonimowej
- 23. Nazwa właściwości do wyrażenia lambda C#
- 24. Wyrażenia lambda Haskella i proste formuły logiczne
- 25. Pobieranie nazwy zdarzenia z wyrażenia lambda
- 26. Prawidłowo obsługi możliwe System.NullReferenceException w lambda wyrażenia
- 27. LINQ do SQL: Ponowne użycie wyrażenia lambda
- 28. Kotlin wyrażenia lambda jako opcjonalny parametr
- 29. Jak użyć wyrażenia lambda w ramach oddzielnych
- 30. napisać metodę, która akceptuje wyrażenia lambda
Zająłem lekcje poświęcone organizacji języków programowania, jak powiedział mi mój profesor, że możesz sprawić, że twój kod będzie leniwy. Ty też, nadal nie rozumiem tego, czy "można dostać się na szczyt góry"? Ale tak naprawdę, to zdezorientowało mnie, nie mogłem się doczekać odpowiedzi. –
Hmm jednym z zastosowań, jaki widzę, jest wybór środowiska wykonawczego i tworzenie funkcji. Załóżmy, że robisz coś dla obiektu i w zależności od tego, co zrobiłeś, musisz przekazać go jednej ze 100 metod lub jednej metodzie z 100 ifs, z lambdasem możesz napisać jedną metodę w locie bez żadnych ifs. – arynaq
'E = hc/λ' !!! Cmon man !! – Tdorno