Java Stream API: функционально, модно, молодёжно!

  Рет қаралды 71,088

letsCode

letsCode

Күн бұрын

Пікірлер: 105
@letsCodeDru
@letsCodeDru 5 жыл бұрын
СОДЕРЖАНИЕ 0:52 Стримы из объектов файловой системы 0:55 Files.lines() 1:11 Files.list() 1:20 Files.walk() 1:50 Стримы из примитивов 2:02 IntStream 2:12 DoubleStream 2:23 IntStream.range() 2:42 IntStream.rangeClosed() 2:54 Arrays.stream() Стримы из объектов 3:11 Stream.of(Object) 3:35 Stream.builder() 3:54 Collection.stream() 4:15 Collection.parallelStream() 4:45 Stream.generate() 5:37 Stream.iterate() 6:26 Stream.concat() Терминальные операции 7:15 Stream.count() 7:20 Stream.forEach() 7:52 Collection.forEach() 8:04 Stream.forEachOrdered() 8:27 Stream.collect() 8:51 Stream.toArray() 8:56 Stream.collect(toMap()) 9:40 IntStream.reduce() 10:06 Stream.reduce() 12:21 IntStream.average(), IntStream.max(), IntStream.min(), IntStream.sum(), IntStream.summaryStatictics() 12:44 Stream.max(), Stream.min() 13:09 Stream.findAny(), Stream.findFirst() 13:35 Stream.noneMatch() 14:02 Stream.anyMatch() 14:13 Stream.allMatch() 15:01 Трансформации стримов 15:08 IntStream.mapToLong() 15:19 IntStream.mapToObj() 15:52 IntStream.distinct() 16:08 Stream.filter() 16:29 Stream.skip() 16:34 Stream.limit() 17:26 Stream.sorted() 17:45 Stream.map() 18:01 Stream.peek() 18:46 Stream.takeWhile() 19:25 Stream.dropWhile() 21:20 Stream.flatMap() 23:49 Примеры использования
@Tiertey
@Tiertey 4 жыл бұрын
добавь в описание 0:00 Старт и тайм-коды попадут на ленту видео
@victormog
@victormog 5 жыл бұрын
*Отличное наглядное пособие по Stream!* Для полноты картины только, можно было бы в начале сказать, что такое Stream...
@letsCodeDru
@letsCodeDru 5 жыл бұрын
Внезапно не подумал, что кто-то не знает. Зашоренность. :)
@victormog
@victormog 5 жыл бұрын
@@letsCodeDru Не знает - ладно. Я до сих пор stream ассоциирую с С-шными потоками...
@kunnilinux
@kunnilinux 5 жыл бұрын
@@letsCodeDru плюсую, может, в видео про лямбды пройдетесь по определениям стримов и лямбд одним махом?
@ИринаЗазыбо
@ИринаЗазыбо 5 жыл бұрын
Очень полезное видео, спасибо!
@Hocorend
@Hocorend 27 күн бұрын
Спасибо большое, постоянно использовал циклы и избегал Stream. Полтора года в QAA, по началу казалось сложно и отодвигал до последнего(Да и мало кто из QA их использует, видимо по той же причине). Теперь буду использовать везде, где это обосновано, уж очень симпатично выглядит. Подписался.
@ЕвгенийАфанасьев-ж8э
@ЕвгенийАфанасьев-ж8э 4 жыл бұрын
Сначала было тяжело понимать, потом скорость 0,75 поставил и класс. Осталось заставить себя перейти с циклов на стримы, чтобы практикой это все закрепить
@pvtitov
@pvtitov 4 жыл бұрын
codewars например хорошо помогает
@pvtitov
@pvtitov 4 жыл бұрын
спасибо за идею про скорость! реально нормально стало! автор на спидах)))
@АнатолийТ-д6л
@АнатолийТ-д6л 2 жыл бұрын
Я как изучил стримы тоже везде их лепил, а оказывается, как отметил автор, только в больших коллекциях получается выигрыш в производительности.
@onizuka_cs2
@onizuka_cs2 2 жыл бұрын
@@АнатолийТ-д6л речь шла о parallel stream.
@ДанилЧерепанов-щ6т
@ДанилЧерепанов-щ6т 2 жыл бұрын
Лучшее видео по стрим апи, которое я видел. Было бы классно углубится в эту тему и ещё рассказать про функциональные интерфейсы. Часто спрашивают на собеседованиях именно о них)
@kunnilinux
@kunnilinux 5 жыл бұрын
Большое спасибо за видео!!! Даже не знаю, как еще выразить благодарность. Дело в том, что я джун в компании, устроился совсем недавно, и темы ваших роликов как раз совпадают с изучаемыми мной темами.
@anjelomanoranjan
@anjelomanoranjan 11 ай бұрын
видео изумительно) спасибо! Жду новых видео по Java
@dmitrymukhin9458
@dmitrymukhin9458 5 жыл бұрын
Спасибо большое!! Даешь очень просто приложения по Spring Cloud!! =))
@torpid0
@torpid0 3 жыл бұрын
Чрезвычайно содержательное видео! Все подробно и без ошибок, эканий и бэканий. За таймкоды в описании отдельное спасибо!
@МихаилКузнецов-м1э
@МихаилКузнецов-м1э 5 жыл бұрын
одна из самых актуальных тем, спасибо!
@Kepchyk1101
@Kepchyk1101 Жыл бұрын
Очень позновательно, быстро и без воды. Не как вот эти: а сегодня мы бе ме ге, аааа, еее. 👍🏻
@nsandrus
@nsandrus 4 жыл бұрын
Отличная демонстрация Stream API, с удовольствием посмотрел бы еще по Optional
@user-ce3lm7sz1k
@user-ce3lm7sz1k 4 жыл бұрын
супер! мне (как тупому) ничего не понятно, но кажется что объяснение хорошее!)
@letsCodeDru
@letsCodeDru 4 жыл бұрын
Это норма. Я учебные видосы и статьи тоже по несколько раз пересматриваю/перечитываю
@russia_winner
@russia_winner 3 жыл бұрын
@@letsCodeDru дорогу осилит идущий
@mirnijalexey2765
@mirnijalexey2765 3 жыл бұрын
2:12 у меня комбинация Ctrl+Alt+Shift почему то не работает на Винде, может какая то другая комбинация по умолчанию?
@eugenekotsaba6512
@eugenekotsaba6512 5 жыл бұрын
это самое содержательное видео на ютубе , лайк)
@Sergey111111
@Sergey111111 5 жыл бұрын
Очень круто, кратко и емко!
@eastwood8628
@eastwood8628 4 жыл бұрын
и четко)
@D.P._
@D.P._ 4 жыл бұрын
Как-то пропустил) Крутой видос, и реально полезный! Исправляюсь: Like as usual!
@ЕгорАнтонов-и4ъ
@ЕгорАнтонов-и4ъ 5 жыл бұрын
Прикольная штука. Недавно узнал об akka-streams, по документации можно более наглядно посмотреть и понять для чего они вообще нужны. +back pressure
@way2play980
@way2play980 8 ай бұрын
Спасибо, очень интересно!
@levvv1000
@levvv1000 5 жыл бұрын
Видео хорошее, только ваш обход списка работает, если самая корневая нода (у которой нет родителя) находится под первым индексом в списке, иначе она будет будет рекурсивно передаваться как аргумент чайлд департамента и дерево не сможет создаться, так как у нескольких департаментов не будет родителей
@user-arbuzer1133
@user-arbuzer1133 3 жыл бұрын
Спасибо БОЛЬШОЕ за видео! Пока что не понятно как работает эта тёмная магия)) Нужно ещё погонять этот ролик speed 0,1))
@shtan5583
@shtan5583 5 жыл бұрын
Стримы топ, но пользоваться ими без документации я почему-то не могу. Куча похожих методов и подводных камней.
@faniskhalikov9736
@faniskhalikov9736 2 жыл бұрын
Круть! Концентрация полезности зашкаливает )) При этом доступность и изложение инфы на высоте
@mr_robot_20_04
@mr_robot_20_04 5 жыл бұрын
Годные и информативные видосы, спасибо за контент! Было бы здорово увидеть туториал по Spring security в вашем исполнении) Желательно более углубленно и информативно нежели уже есть на канале
@vp9878
@vp9878 4 жыл бұрын
Спасибо за урок!
@Antonio-b6f5b
@Antonio-b6f5b 4 жыл бұрын
Просто здорово. Спасибо за труд.
@Qwertyuiopasdfghjklzxcvbnm4
@Qwertyuiopasdfghjklzxcvbnm4 3 жыл бұрын
Очень качественное, информативное объяснение!
@romanmotovilov129
@romanmotovilov129 5 жыл бұрын
Спасибо. Отличный урок!
@moovestone
@moovestone 6 ай бұрын
спасибо. только это походу для тех, кто уже работает разработчиком, а не изучает)
@dmitriy5248
@dmitriy5248 4 жыл бұрын
Шикарное видео! Спасибо
@taraskutselya1326
@taraskutselya1326 5 жыл бұрын
То что надо! Лайк, подписка, колокольчик (вру... давно подписан 😀)
@AlexZvukov
@AlexZvukov 4 жыл бұрын
10:50 Пример с reduce() и рекурсией пришлось пересматривать несколько раз пока усвоил. Это нормально? :D
@letsCodeDru
@letsCodeDru 4 жыл бұрын
Чтобы понять рекурсию, нужно понять рекурсию
@pavelminsk
@pavelminsk 2 жыл бұрын
Очень круто! Спасибо!
@kunnilinux
@kunnilinux 5 жыл бұрын
Что можете сказать по поводу производительности стримов в сравнении со старыми подходами? Например, что быстрее, конвертировать коллекцию доменов в коллекцию ДТО через фор-ич или через стрим апи? В чем сок использования для простых операций? Только лишь в читабельном и компактном коде?
@kunnilinux
@kunnilinux 5 жыл бұрын
я сразу поясню, я новичок и я как раз из тех "староверов", которые все до сих пор делают в циклах, ибо так научился изначально, а чтобы постичь новое, надо сперва понять преимущества нового над старым
@maksiml6298
@maksiml6298 5 жыл бұрын
Компактность. Big O не зависит что используется, и там и там возможно медленная скорость.
@h00per12
@h00per12 5 жыл бұрын
Вообще не факт что стримы медленнее, может там под капотом jvm как-то оптимизирует это дело. И даже если и медленнее, то вопрос только в том что тебе нужно читабельный код или производительность. По дефолту на первом месте читабельный код, а декларативный подход(функциональщина, стримы) проще читать нежели императивный(циклы). Очень узкий кейс должен быть, когда ты не юзаешь стримы ради производительности, возможно, тебе тогда вообще не стоит писать на java, если тебе нужна производительность, посмотри в сторону С++, например.
@andrewcool482
@andrewcool482 5 жыл бұрын
blog.jooq.org/2015/12/08/3-reasons-why-you-shouldnt-replace-your-for-loops-by-stream-foreach/
@ZhivaPR
@ZhivaPR 5 жыл бұрын
Хорошая подача, спасибо.
@sander02rubenkov62
@sander02rubenkov62 4 жыл бұрын
2:15 Ребят, обертки только для double,long,int - и все! Никаких "boolean и так далее" - нет.
@andrewaliokhin8306
@andrewaliokhin8306 3 жыл бұрын
Оче6нь информативною. Спасибо
@iryna6389
@iryna6389 5 жыл бұрын
Привет, огромное спасибо за видео.
@tomozi1
@tomozi1 5 жыл бұрын
Спасибо за превосходные видео!
@shinshin7253
@shinshin7253 Жыл бұрын
Годно! Спасибо
@ievgengrozenok1803
@ievgengrozenok1803 5 жыл бұрын
Спасибо! Все было понятно
@K4sik
@K4sik 5 жыл бұрын
Видео очень полезное, но будут уроки по Spring Boot с использованием JavaScript и framework Ajax, JQuery ......?
@artyomgrigorev2186
@artyomgrigorev2186 2 жыл бұрын
Например, моднейшее написание стримов, например 😃
@sagirovalinda9743
@sagirovalinda9743 5 жыл бұрын
Я может немного туплю, но как так получается что вы просто пишете вызов стрима(или любого метода), а идея сама дополняет тем, что кладет его в переменную с нужным обозначением вида? Пока я не объявлю новую переменную, я не могу вызвать Stream.of или что-то другое
@xWarTeX
@xWarTeX 4 жыл бұрын
ctrl+alt+v и идея сама засунет все в переменную если это возможно
@ВадимКопиця-д8ц
@ВадимКопиця-д8ц 5 жыл бұрын
Спасибо)
@margulankurmangaly9150
@margulankurmangaly9150 5 жыл бұрын
По твоим видосам устроился на работу)))))))) Спасибо за годноту
@letsCodeDru
@letsCodeDru 5 жыл бұрын
Рад, что имею к этому отношение. Проставляйся с первой ЗП, реквизиты под каждым видео 😅
@alexandergrankin8829
@alexandergrankin8829 4 жыл бұрын
Пушка!
@mercurial-flower
@mercurial-flower 2 жыл бұрын
Класс!
@withotsoul7252
@withotsoul7252 2 жыл бұрын
хороший урок!
@denwerxampp4035
@denwerxampp4035 2 жыл бұрын
ребята, подскажите сочетание клавиш на 9:34 )
@gennadyshevchenko7940
@gennadyshevchenko7940 2 жыл бұрын
возможно ctrl+alt+enter на винде.
@Peter-jp9zw
@Peter-jp9zw 5 жыл бұрын
ты классный, спасибо тебе)
@gorsky6382
@gorsky6382 4 жыл бұрын
Вы конечно извините, но это лайк и подписка..
@MaksymVashchenko
@MaksymVashchenko 5 жыл бұрын
Раз ты стримы затронул, может и лямды уже добьешь туда сразу?)
@letsCodeDru
@letsCodeDru 5 жыл бұрын
Угу. Запланировано ужо.
@alexanderkadatskiy7986
@alexanderkadatskiy7986 5 жыл бұрын
@@letsCodeDru Спасибо за супер-видос! А лямбды выйдут? :)
@romantsyupryk3009
@romantsyupryk3009 5 жыл бұрын
Thank you so much.
@p.polunin
@p.polunin Ай бұрын
Разжевал и в рот положил! Спасибо! Вкусно!
@ИгорьБирт-я2щ
@ИгорьБирт-я2щ 2 жыл бұрын
Голова задымилась😁
@ИгорьБирт-я2щ
@ИгорьБирт-я2щ 2 жыл бұрын
Спасибо автор! Огромная работа проделана и всего в 27 минут вложили! Искусство!
@pvtitov
@pvtitov 4 жыл бұрын
боже чтоже так быстро то у меня сейчас голова взорвется, можно тоже самое но 10 видео продолжительностью как это? XD
@koKS.1k
@koKS.1k 3 жыл бұрын
Скорость воспроизведения х0,75 и всё четко (=
@almasabdrazak5089
@almasabdrazak5089 5 жыл бұрын
Стримы от io ресурсов , таких как файл, нужно явно закрывать или оборачивать в try with resources
@GameForYouOnline
@GameForYouOnline 2 жыл бұрын
или аналогичной структуре
@ВячеславЗайцев-в9и
@ВячеславЗайцев-в9и 2 жыл бұрын
like!
@Teramozg
@Teramozg Жыл бұрын
Скорость понимания видео рассчитана как минимум на мидла
@batonsudby
@batonsudby 3 жыл бұрын
😀
@ZeBatua
@ZeBatua 8 ай бұрын
Видео для тех, кто уже что-то знает про стримы. Я вообще ничего не понял. Куда то летит, миллион всего объясняет. 0 шансов запомнить и тем более понять
@Cucumber83
@Cucumber83 5 жыл бұрын
что это за тема в идеи?
@letsCodeDru
@letsCodeDru 4 жыл бұрын
Darcula
@Cucumber83
@Cucumber83 4 жыл бұрын
letsCode спасибо! странно, она выглядит совсем не так как у меня ( наверное от ОС зависит
@sergeyzakharchenko1706
@sergeyzakharchenko1706 4 жыл бұрын
Джава, а не ява!!!
@letsCodeDru
@letsCodeDru 4 жыл бұрын
Ойфсё
@b213videoz
@b213videoz 5 ай бұрын
Hipster stuff
@Youtooobo
@Youtooobo 2 жыл бұрын
Классно. Но ничего не понятно )
@oleksa537
@oleksa537 2 жыл бұрын
ява - это мотоцикол. А язык программирования - это джава.
@Renzo_Asterio
@Renzo_Asterio Жыл бұрын
2430
@gennadyshevchenko7940
@gennadyshevchenko7940 2 жыл бұрын
Самого интересного нет.
@dv5686
@dv5686 4 жыл бұрын
Какая нафиг Ява?))) ничего что создатели языка называют ее джава?)))
@kolob204
@kolob204 4 жыл бұрын
Еще за запятые его поругайте : ай яй яй, дядя Андрей, такой бАльшой и усатый, а все "ошибаешся"
@dv5686
@dv5686 4 жыл бұрын
Иван Иванов спасибо, надо щемить лоха и за запястья
@kolob204
@kolob204 4 жыл бұрын
@@dv5686 как то странно слышать спасибо, после сарказма.
@dv5686
@dv5686 4 жыл бұрын
Иван Иванов сарказм, который мы заслужили:)))
@Youtooobo
@Youtooobo 11 ай бұрын
Ужасное объяснение.
Новое в JDK 14 (синтаксис)
25:28
letsCode
Рет қаралды 26 М.
Which team will win? Team Joy or Team Gumball?! 🤔
00:29
BigSchool
Рет қаралды 15 МЛН
Real Man relocate to Remote Controlled Car 👨🏻➡️🚙🕹️ #builderc
00:24
FOREVER BUNNY
00:14
Natan por Aí
Рет қаралды 5 МЛН
Тагир Валеев - Stream API: рекомендации лучших собаководов
55:29
JPoint, Joker и JUG ru — Java-конференции
Рет қаралды 42 М.
Stream API in Java
26:04
Telusko
Рет қаралды 352 М.
Java. Лямбда-выражения.
23:47
Sergey Arkhipov Java Tutorials
Рет қаралды 35 М.
Простой анализатор диска на JavaFX
22:13
Лямбда-выражения в Java 8
1:09:00
SpecialistTV
Рет қаралды 114 М.
Сергей Куксенко - Stream API, часть 1
1:13:18
JPoint, Joker и JUG ru — Java-конференции
Рет қаралды 83 М.
CI/CD - Простым языком на понятном примере
15:29
Артём Шумейко
Рет қаралды 106 М.
Простой HTTP сервер. #1
24:22
letsCode
Рет қаралды 28 М.
Тагир Валеев - Странности Stream API
57:14
JPoint, Joker и JUG ru — Java-конференции
Рет қаралды 25 М.
Which team will win? Team Joy or Team Gumball?! 🤔
00:29
BigSchool
Рет қаралды 15 МЛН