Тёмный

Что такое Java Stream API / Стримы в Джава / Как писать меньше кода и делать меньше ошибок 

Software Architect Alex Korolev
Подписаться 6 тыс.
Просмотров 27 тыс.
50% 1

Чем больше вы напишите кода - тем больше шанс что будет допущена ошибка.
В Java 8 появился инструмент, которым просто необходимо уметь пользоваться.
В данном видео мы рассмотрим простые примеры, которые уже на раннем этапе демонстрируют силу фреймворка.
что такое lambda - • Понимание Lambda выраж...
что такое optional - • Optional или как избав...
0:00 Вступление
0:44 Подготовка классов
4:24 Стримы
20:45 Итого
Java 2021

Опубликовано:

 

15 июн 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 82   
@drZL0
@drZL0 3 года назад
Огромное спасибо за видео. Максимум наглядности, минимум воды - ровно то, что нужно для начинающего.
@user-dp6dh3cx5k
@user-dp6dh3cx5k 3 года назад
Отличное видео! Уже проходил данную тему, все понятно, но одновременно было пару новых моментов. С удовольствием посмотрел бы лямбды. UPD. Лямбды уже есть, спасибо!
@Alellas
@Alellas 3 года назад
Спасибо!)
@alexned7905
@alexned7905 3 года назад
Спасибо за видео! Излагаете понятно и слушать приятно
@user-if8jq5cx7p
@user-if8jq5cx7p 3 года назад
Ништяк. Стримы - это супер крутой и удобный инструмент))
@Alellas
@Alellas 3 года назад
Полностью согласен ) Но на них тоже можно переборщить и очень непонятно написать. + Надо убедиться что все в команде их понимают.
@haykvardevanyan4683
@haykvardevanyan4683 2 года назад
Автор просто нет слов как ты внятно все объяснил и показал на примере, спасибо большое, главное что тут наглядно видно зачем нужны Stream, ЛайкПодписка)
@user-zz7ff2gm1f
@user-zz7ff2gm1f Год назад
Добрый день. Очень хорошие уроки у вас на канале. Доступно все изложено. Может вы планинуете к выходу еще какие-то уроки? Было бы классно!
@timsafari6255
@timsafari6255 2 года назад
Большое спасибо за столь шикарное объяснение!
@eron
@eron 2 года назад
Отличное видео, оно помогло мне вникнуть в стримы! Спасибо Алекс за обьяснение! Вижу на канале много полезного - подписался :)
@DeAgRo
@DeAgRo 3 года назад
Отличное и информативное видео, все очень понятно объяснили, Спасибо за видео!
@irinasuponeva4748
@irinasuponeva4748 3 года назад
Спасибо за урок, все понятно сразу. А расскажите про лямбды так же для блондинок)))
@Alellas
@Alellas 3 года назад
хорошо, постараюсь записать. для лямбд надо прочитать что такое интерфейс, потом что такое функциональный интерфейс и что такое анонимные классы. после этого концепция лямбд будет очень легко понятна.
@irinasuponeva4748
@irinasuponeva4748 3 года назад
@@Alellas про интерфейсы, анонимные классы в курсе)
@Alellas
@Alellas 3 года назад
ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-ztraQ9chIUE.html - записал про основы lambda в java. не стал нагружать видео синтаксисом и прочим - думаю что если концепция понятна - то синтаксис проблем не создаст. есть грубо говоря два варианта синтаксиса - короткий и длинный но они оба очень просты.
@Van8983
@Van8983 3 года назад
Спасибо. Хорошая видео.
@LVS-UA
@LVS-UA 2 года назад
Отличное видео. Автор, Вам большое спасибо!
@user-bj4qb5bk3o
@user-bj4qb5bk3o 3 года назад
классно объясняешь, сколько видео пересмотрел.... твоя подача на the best. Продолжай в том же духе, будет много подписчиков
@iljavitohins8729
@iljavitohins8729 2 года назад
Спасибо за качественный урок.
@phil2964
@phil2964 3 года назад
Спасибо за труды👍👍👍
@user-zo4ml2mg2s
@user-zo4ml2mg2s 3 года назад
Огромное спасибо за видео, все четко и понятно однозначно лайк и подписка)
@alexkos2593
@alexkos2593 Год назад
так интересно и наглядно! Спасибо!
@mrpipiskin4
@mrpipiskin4 Год назад
Спасибо, все еще актуально и полезно.
@shokhrukhtolkinov2873
@shokhrukhtolkinov2873 Год назад
Отличное видео👍👍👍👍👍👍👍👍спасибо
@gneltamamyan4305
@gneltamamyan4305 2 года назад
spasibo ogromnoe!!!!
@AndreyOtryaskin
@AndreyOtryaskin 10 месяцев назад
Отличное показательное видео, спасибо!
@user-lf1di3fd3x
@user-lf1di3fd3x 8 месяцев назад
Спасибо за труды!
@innaya13
@innaya13 Год назад
Thank you very much for such a beautiful explanation!
@Ponemnogu_o_Mnogom
@Ponemnogu_o_Mnogom 2 года назад
Отличный ролик и подача. Спасибо
@sovrinfo
@sovrinfo 2 года назад
Спасибо за видео.Коммент в поддержку!
@Modestov1998
@Modestov1998 Год назад
Видео огонь!! Большое спасибо)
@bilbojke1834
@bilbojke1834 Год назад
Супер, отлично объяснено!
@bbrother92
@bbrother92 3 года назад
Спасибо, за подачу информации
@anjelomanoranjan
@anjelomanoranjan 10 месяцев назад
Спасибо! Подписка оформлена! жду новых видео по Java
@user-km3mp8wh7f
@user-km3mp8wh7f 3 года назад
Да, хорошо объясняешь!
@Judosaper
@Judosaper Год назад
Спасибо за опшинал, стримы и лямбды, ты огонь! 🔥
@user-dk9tb6zo2r
@user-dk9tb6zo2r Год назад
Отличное объяснение стримов!
@user-np7bk9hb2u
@user-np7bk9hb2u 9 месяцев назад
Спасибо за видео ваши!!!!
@ercefwxdx
@ercefwxdx 3 года назад
Спасибо, отличное видео
@user-cq2tg7rm3d
@user-cq2tg7rm3d 3 года назад
Круто!
@Alellas
@Alellas 3 года назад
Спасибо, но это лишь вершина айсберга. Стримы очень обширная тема.
@Art-ub1sg
@Art-ub1sg 9 месяцев назад
Полезно!
@ConfidenceGold
@ConfidenceGold 2 года назад
Огромное спасибо!)
@ilgul9177
@ilgul9177 2 года назад
Thanks. It's a very useful video for me.
@lavboj
@lavboj 3 года назад
Ты красава
@arahnid_9844
@arahnid_9844 Год назад
спасибо за видео. Интересно было бы увидеть примеры, как с помощью стримов заменить for в котором идет работа с индексами. Что-то вроде "в элементах с индексом 5-15, заменить буквы А на О". Пока мне такое проще через обычный for делать, но наверно есть способы получше
@user-ok1lq9be4q
@user-ok1lq9be4q 2 года назад
Спасибо!
@user-nx4qo5zm2p
@user-nx4qo5zm2p 2 года назад
Отлично.
@user-jv5wf3gx2e
@user-jv5wf3gx2e 2 года назад
Спасибо вам, урок отличный! Но вроде вы используете более свежую Java, не Java 8. В 8 по идее надо использовать Arrays.asList() вместо List.of
@VitMS1
@VitMS1 3 года назад
Примеры хорошо раскрывают и понятно рассказано. Зачем в последнем примере отдельно создать переменную Optional, дальше чейнить, например с OrElse*() - по желанию - кода меньше будет :)
@non_holy6286
@non_holy6286 3 года назад
лайк!!
@cakeistrue
@cakeistrue 2 года назад
Класс!!!
@astracode7955
@astracode7955 2 года назад
Спасибо за видео. А можно применение стримов, опшинал ближе к коду. Например в сервисах, ДАО. Что нибудь такое
@user-tg3wl8yj3i
@user-tg3wl8yj3i 3 года назад
Спасибо! Доходчиво, коротко, ясно! Было бы хорошо, получить Git ссылку на Ваш код :)
@Alellas
@Alellas 3 года назад
Привет. Мои репо закрыты так как клиенты не очень хотят чтоб их код был в интернете. Но из интересных репозиториев вот например есть - github.com/kdn251/interviews - там вопросы к интервью в известные компании )
@user-tg3wl8yj3i
@user-tg3wl8yj3i 3 года назад
@@Alellas Спасибо Большое
@maxsmithist
@maxsmithist 2 года назад
Спасибо за отличное видео, а как делается проверка на null?
@edmundasmilieska9266
@edmundasmilieska9266 3 года назад
Спосибо. Можно пожалуста о Call Back было бы очень познавательно.
@ascar66
@ascar66 3 года назад
А есть ли возможность показать как применяются лямбды в боевой разработке? А то все на простейших примерах учим, а как оно в работе неизвестно.
@Alellas
@Alellas 3 года назад
самый простой пример - использование runnable - stackoverflow.com/questions/34026903/how-runnable-is-created-from-java8-lambda - тут разбирают что человек встретил в коде. тут нет никакой магии - где раньше вы писали for и создавали анонимные классы - теперь используете лямбды и стримы. но перебарщивать с ними тоже не надо - самое главное чтоб код работал и легко читался.
@lisafox9026
@lisafox9026 Год назад
enum перечисления : при сравнении лучше использовать знак равно , во избежание NPE .filter(a -> a.getClassification() == Classification.PREDATOR) или?
@BlackSoul57
@BlackSoul57 2 года назад
Тоже самое, что и в С# методы расширения LINQ для коллекций и массивов. Я бы добавил, что возможно после стрелки писать полноценные тела методов, а не только одну строку, по сути писать полноценные лямбда-выражения и даже вложенные стримы, но есть риск леща огрести за такой код.
@user-mn1hg2jb8d
@user-mn1hg2jb8d 11 месяцев назад
Прошу змейть меня 0:20
@user-dj5rn2tz6q
@user-dj5rn2tz6q 2 года назад
Немного странно, когда в "старом подходе" видишь непосредственно работу с функционалом стримов, а именно .forEach с референс методом внутри. А так все клево, спасибо.
@user-uo6vk5vb1l
@user-uo6vk5vb1l 3 года назад
Мужик всё круто молодец)))) Не знаю обрабатываешь ты звук после записи или нет. Но летят сибилянты очень сильно. На дорожку кидай диессер что бы это победить и звук будет чище.
@Alellas
@Alellas 3 года назад
Если честно то нет - меня хватило только на базовые настройки. Под окном ездят поезда и машины, а от стен идет эхо, так что решил совсем уж не заморачиваться и просто до терпимого уровня дотащить. Про диессер услышал - попробую! Спасибо!
@user-uo6vk5vb1l
@user-uo6vk5vb1l 3 года назад
@@Alellas если хочешь, когда следующее видео будешь монтировать скинуть мне дорожку я попробую подправить . ))) Мне не сложно и не напряжно, я как хобби занимаюсь музыкой )))
@Alellas
@Alellas 3 года назад
@@user-uo6vk5vb1l учту!) пока нашел плагин, попробую пока сам на -10 db выставлять - вроде не так уши режет. сам бы врятли заметил, спасибо!
@anpoliakov
@anpoliakov 2 года назад
Все супер, только напрягает сглатывание слюны в микрофон) попей водички)
@RumEvo
@RumEvo 7 месяцев назад
Обычная рабочая обстановка, не напрягайтесь
@na12mor
@na12mor Год назад
о, было аж три строчки, а со стрим апи стало всего три строчки! 🤣
@user-mz3us8pr9e
@user-mz3us8pr9e 11 месяцев назад
Здравствуйте, вы больше не ведете канал?
@user-np7bk9hb2u
@user-np7bk9hb2u 9 месяцев назад
Почему в конце Optional ?
@RumEvo
@RumEvo 7 месяцев назад
Как так быстро копипастить?
@RumEvo
@RumEvo 7 месяцев назад
Нашел. Пользуйтесь. ctrl + D
@aleksadler6679
@aleksadler6679 3 года назад
Отличный видос. Залетел, как школьник на концерт Моргенштерна)
@alexalexander3252
@alexalexander3252 3 года назад
Между HERBIVORE и OMNIVORE так и просится CARNIVORE вместо PREDATOR.
@narrow_minded
@narrow_minded 3 года назад
Очень тихо, почти шёпот 😒
@lesterbruke8166
@lesterbruke8166 3 года назад
Спасибо!
@user-iq5wx7qq4v
@user-iq5wx7qq4v 2 года назад
Спасибо!