Kotlin за час. Теория и практика.

  Рет қаралды 214,353

alishev

alishev

Күн бұрын

Скачать PVS-Studio бесплатно: www.viva64.com/alishev
KZfaq канал PVS-Studio: / pvsstudiotool
VK группа PVS-Studio: pvsstudio_rus
Продвинутая Java - swiftbook.org/courses/415
ПОЛНЫЙ КУРС ПО SPRING (Hibernate, REST, Boot, Security): swiftbook.org/courses/438
Telegram: t.me/alishev_g
Реклама и сотрудничество: alishev.neil@gmail.com
00:00 - Вступление
1:07 - Введение
3:25 - Hello World!
5:05 - Переменные
9:37 - Циклы
12:39 - Диапазоны
15:32 - Функции
22:53 - Альтернатива перегрузке методов
25:47 - Vararg
29:40 - PVS-Studio
30:39 - Null Pointer Exception
35:31 - Elvis оператор
36:51 - Оператор !!
38:59 - When Expression
44:09 - Lambda выражения
45:55 - Полезные функции на коллекциях
50:30 - ООП в Kotlin (Классы и объекты)
50:41 - Первичный конструктор
53:49 - Вторичный конструктор
56:00 - Конструктор без аргументов
56:45 - Ключевое слово data
1:02:09 - Задачи с собеседования Яндекса
1:03:26 - Условие первой задачи
1:05:06 - Решение первой задачи
1:10:00 - Условие второй задачи
1:10:45 - Решение второй задачи
1:15:00 - Условие третьей задачи
1:15:50 - Решение третьей задачи

Пікірлер: 365
@alishevN
@alishevN 3 жыл бұрын
Наш чат в Telegram: t.me/alishev_g
@alishevN
@alishevN 3 жыл бұрын
@Jace Jabs Привет! я его не знаю, поэтому пока такого видео не будет.
@user-iq8zh9yu1c
@user-iq8zh9yu1c 2 жыл бұрын
@@alishevN Привет, можно ли заказать решения задач по котлин у вас?
@Fire.fenix999
@Fire.fenix999 2 жыл бұрын
Как обращаться Алишер или Алишев?
@javavlogger9409
@javavlogger9409 3 жыл бұрын
Смотрел на 2х, освоил Котлин за полчаса.
@antondityatev2338
@antondityatev2338 3 жыл бұрын
Где видосики, влоггер?
@user-yk9wv8hg2q
@user-yk9wv8hg2q 3 жыл бұрын
спс ржу ))
@sergeylysenkov7346
@sergeylysenkov7346 3 жыл бұрын
Не смотрел и сразу освоил, магия
@mmmmmg
@mmmmmg 3 жыл бұрын
Чай
@andreyi5132
@andreyi5132 2 жыл бұрын
Да, надо ускорять =) Первый раз на колтине, но давно люблю регулярки. 2-я задача с кол-вом букв: fun charCount(input: String) : String{ return input.split("(?
@user-xs3tm9hu9x
@user-xs3tm9hu9x 3 жыл бұрын
Огромное спасибо за ваш труд. Тема Kotlin очень интересна, буду и дальше рад видеть ее на канале. Удачи в начинаниях :)
@sodz5144
@sodz5144 3 жыл бұрын
Прекрасно, хороший темп, тембр и словарный состав. Наполнение то что доктор прописал. Спасибо! Переслал сыну. ))
@alexeypolishchuk7010
@alexeypolishchuk7010 3 жыл бұрын
Читал книгу по основам, на чтение ушло пару дней, здесь все четко и понятно вложились в один час. Большое спасибо за видео и вложенное в него время. Видео из категории must have для старта.
@manOfPlanetEarth
@manOfPlanetEarth 3 жыл бұрын
что за книга?
@alexeypolishchuk7010
@alexeypolishchuk7010 3 жыл бұрын
@@manOfPlanetEarth The Joy of Kotlin
@maizecheery
@maizecheery 2 жыл бұрын
@@alexeypolishchuk7010 thanks!
@user-bm8xn5hu5f
@user-bm8xn5hu5f 3 жыл бұрын
Наиль, спасибо за видео!!! Очень жду следующих видео про Котлин.
@red2772
@red2772 Жыл бұрын
Спасибо вам, добрый человек! Идельный вмдео урок. Сжато, по делу и при этом все пояснено.
@hatipov1986
@hatipov1986 3 жыл бұрын
Спасибо за все видео на канале, хорошая подача материала, продолжай в том же духе!
@phil2964
@phil2964 3 жыл бұрын
Наиль, ещё не посмотрел, но заранее лайк 👍, давно пора по котлину плейлист сделать!!!
@Devivl
@Devivl Жыл бұрын
Очень хорошее ознакомительное видео, Наиль. Как всегда - просто, чётко и понятно. Спасибо!
@user-kt6tf6wj7e
@user-kt6tf6wj7e Жыл бұрын
Шикарная подача и примеры. После чтения документации закрепить его видосом было очень полезно. Спасибо.
@andrew31c
@andrew31c Жыл бұрын
Спасибо огромное за такое офигенное погружение в Kotlin. Сам я пишу на TypeScript, немного знаю Java. Просто в восторге, насколько же все круто и красиво делается в котлине!
@2wardruid2
@2wardruid2 3 жыл бұрын
Спасибо за полезное видео. Подача - то что нужно. Со знаниями Java Core было очень легко понимать о чем речь.
@user-kb5cs4ck4l
@user-kb5cs4ck4l Жыл бұрын
Наиль - просто офигенный дядька! Всегда с удовольствием смотрю его видео, всегда всё чётко, понятно и без лишней воды.
@vitaly1357
@vitaly1357 2 жыл бұрын
Спасибо большое за Ваши видео! Очень понятно и структурировано излагаете материал.
@user-zo4ml2mg2s
@user-zo4ml2mg2s 3 жыл бұрын
Спасибо за твои видео, как всегда просто и доступно)
@tolikpar
@tolikpar Жыл бұрын
Огромное спасибо Наиль! Топ канал и топовые видео!
@LexKoenigDrummer
@LexKoenigDrummer 3 жыл бұрын
Лайк не глядя:) Спасибо за вашу работу, Наиль и за умение хорошо подать материал) P.S Посмотрю позже)
@xatuky9644
@xatuky9644 Жыл бұрын
посмотрел?
@zeus2521
@zeus2521 2 жыл бұрын
В этом видео всё идеально) И подача, и язык
@abbosagzamov8499
@abbosagzamov8499 3 жыл бұрын
как всегда на высшем уровне ! Спасибо
@vodnickk3134
@vodnickk3134 3 жыл бұрын
Наиль, огромное спасибо за урок. Но очень хотелось бы от вас ещё услышать про функции области видимости: let, run, with, apply, и also. Думаю это очень не маловажная особенность в Котлин. Спасибо!
@user-hz8vq8qf3f
@user-hz8vq8qf3f 2 жыл бұрын
Как раз то что я искала! Спасибо было полезно.
@Yornero
@Yornero 3 жыл бұрын
Как всегда хороший урок, спасибо) По впечатлениям Котлин вроде бы довольно удобный, но в некоторых местах все же синтаксис выглядит даже сложнее и запутаннее. Хотя наверное это просто с непривычки
@timon1816
@timon1816 4 ай бұрын
выражаю свою огромную благодарность за столь информативное и лаконичное видео
@MrMoshell
@MrMoshell 3 жыл бұрын
Великолепно! Просто восхитительно! Коротко, без воды и по делу.
@MRoose
@MRoose Жыл бұрын
Отличный вводный урок, спасибо большое!
@Majjabee-np9nq
@Majjabee-np9nq 3 жыл бұрын
Материал и озвучка - хорошая. Спасибо!
@user-lj8sc8xj1m
@user-lj8sc8xj1m 11 ай бұрын
Очень суперский урок - спасибо!
@gdnk703
@gdnk703 3 жыл бұрын
Самый лучший ролик на ютюбе! Спасибо за подробное разъяснение кода ! нигде такого больше нет, а ведь это именно то, что нужно! Хочу ещё!!!!
@viktyusk
@viktyusk Жыл бұрын
Спасибо за быстрое введение в Kotlin.
@Denis-Orlov
@Denis-Orlov 3 жыл бұрын
Привет! Классный посыл - знакомство с Котлин. Лайк сразу.
@goodboy7902
@goodboy7902 3 жыл бұрын
Спасибо за видос!
@medweather
@medweather 3 жыл бұрын
Бро, ты крут! меня как раз на работе перевели на проект с котлиным, а я особо в нем не фурычу.. а тут такой видос мне в рекомендации) Так что спасибо!)
@Sashikx_zxc
@Sashikx_zxc Жыл бұрын
Наиль ты болшой молодец!! Любые твои уроки, очень позноавтельные !!
@Ilyas377
@Ilyas377 3 жыл бұрын
спасибо. было лень читать книгу, теперь стало легче)
@agentr227
@agentr227 3 жыл бұрын
Спасибо за видео, сохранил и лайкнул 👍
@Majjabee-np9nq
@Majjabee-np9nq 3 жыл бұрын
Спасибо за ваш труд!
@ruslannovikov8374
@ruslannovikov8374 Жыл бұрын
Perfect explanation of Kotlin. Thank you for nice video!
@bardir16
@bardir16 3 жыл бұрын
Потихоньку переходим в нашей команде с java на котлин. Видео очень полезное. Спасибо
@olgafedyanova
@olgafedyanova Жыл бұрын
зачем, почему?
@Das.Kleine.Krokodil
@Das.Kleine.Krokodil Жыл бұрын
какого рода компания у вас?
@bardir16
@bardir16 Жыл бұрын
@@Das.Kleine.Krokodil сбер
@Nievinor
@Nievinor 3 жыл бұрын
Спасибо за видео)
@user-ow7mh1zb2b
@user-ow7mh1zb2b 3 жыл бұрын
Спасибо, очень интересно !
@user-zj2bz7gk2j
@user-zj2bz7gk2j 2 жыл бұрын
Преподаватель от бога просто )) спасибо, все очень понятно
@user-pi7yt5qo6d
@user-pi7yt5qo6d 2 жыл бұрын
Как же приятно учить Kotlin после Java! Не потому что Java ужасный, просто уже всё понимаешь моментально )
@imgolem.
@imgolem. Жыл бұрын
Согласен, пишу на Джаве +- год, и вот решил выучить Котлин :)
@ololo2274
@ololo2274 Жыл бұрын
Я тебе больше скажу - после Java и Python - Kotlin учить еще приятнее ) Контлин - их внебрачный сын )
@q.f3549
@q.f3549 Жыл бұрын
@@ololo2274 Jaba + Piton = Kotleta
@olgafedyanova
@olgafedyanova Жыл бұрын
а зачем он вам в работе был нужен?
@MRoose
@MRoose Жыл бұрын
После Java и Gosu только названия коллекций надо запомнить 😊
@demitelix
@demitelix 3 жыл бұрын
Вот это круто, как раз на котлине сейчас пишем
@user-vo1dy1ie4s
@user-vo1dy1ie4s 2 жыл бұрын
спасибо за контент)
@E6y4a94yma
@E6y4a94yma 3 жыл бұрын
Спасибо тебе за твои уроки
@demndevel
@demndevel 10 ай бұрын
хоть я и кодил всю свою сознательную жизнь на шарпах, котлин я благодаря вам освоил очень быстро. спасибо за видос!
@user-qb9se2ok2y
@user-qb9se2ok2y 2 жыл бұрын
Познавательно, спасибо)
@user-qx3jt8fw1v
@user-qx3jt8fw1v Жыл бұрын
СУПЕР. спасибо за труд
@stanislavomelchenko5271
@stanislavomelchenko5271 2 жыл бұрын
Огромное спасибо за такую большую выдачу такого материала. Я к Kotlin относился чутка с презрением, типо фу напридумывали языков всяких. А теперь начинаю видеть что он превосходит Java и временами удобнее. Но... без знаний Java я бы мало что понял с этого урока. Так что Котлин это второе дыхание Javы.
@inbuckswetrust7357
@inbuckswetrust7357 Жыл бұрын
Дыхание жавы ага, этому дыханию уже наверное более 40 лет. Сначала барабан выпустили язык для кофеварок, чтобы не дай бог не было перегрузки операторов, а потом стали туда напихивать видя как язык сливает.
@Das.Kleine.Krokodil
@Das.Kleine.Krokodil Жыл бұрын
@@inbuckswetrust7357 откуда цифра 40 лет? и при чем тут котлин?
@antonvarganov1312
@antonvarganov1312 2 жыл бұрын
Годнота, давай ищо!
@softline20091
@softline20091 Ай бұрын
Спасибо огромное ! Искал как раз такой короткий ознакомительный курс. Котлин чем то напомнил мне груви, тоже растет из джавы, но намного упрощает синтаксис по сравнению с ней.
@user-ms5pc2vj8u
@user-ms5pc2vj8u 3 жыл бұрын
Довольно не плохая презентация информации, спасибо бро! Давай запилим приложение еще на минималках какое нибудь и будет вообще сказка!
@user-uf4qg3ou7z
@user-uf4qg3ou7z 3 жыл бұрын
Ждём марафон по Котлин 🔥
@seoonlyRU
@seoonlyRU Жыл бұрын
вот это шикарно!!!! Лайк от СЕООНЛИ
@azimjon_azizov
@azimjon_azizov Жыл бұрын
Огромное спасибо за проделанный труд. Зная Java, освоил Kotlin (на базовым уровне) со скорость 1.25 :)
@Lurker-vp9ek
@Lurker-vp9ek 3 жыл бұрын
ААА, наконец-то Котлин))
@user-xe7gc6dn3f
@user-xe7gc6dn3f 2 жыл бұрын
Спасибо за видео! Первая задача: import java.util.LinkedList fun repeated(a1: IntArray, a2: IntArray): List { val list2 = LinkedList(a2.asList()) val result = mutableListOf() for (i in a1) if (list2.remove(i)) result.add(i) return result }
@eugenenovikov671
@eugenenovikov671 3 жыл бұрын
спасибо за видео
@maximkarassev1016
@maximkarassev1016 3 жыл бұрын
Лучший!!!
@zclystven6057
@zclystven6057 Ай бұрын
Господи, наконец-то попалось видео не облизывающее язык программирования в течение часа, а и вправду рассказывающее дельные и интересные вещи про него.
@sergeyplotnikov5031
@sergeyplotnikov5031 3 жыл бұрын
Спасибо большое!!!!
@grniko
@grniko 3 жыл бұрын
Лайк стоит, но просмотр будет примерно через месяц)
@vladimirzhdanov1338
@vladimirzhdanov1338 Жыл бұрын
Спасибо за видео, выучил язык, еще бы в контексте спринга\хибера - Котлин)
@Frestein
@Frestein 10 ай бұрын
Пересказал документацию, красава.
@aquinary.
@aquinary. Жыл бұрын
Небольшая поправочка - val - это read-only переменная. Т.е. не совсем константа. Чтобы задать константу, нужно использовать const val. Если декомпилировать котлиновский код каким-нибудь java-декомпилятором, то будет примерно такой результат: System.out.println(ConstValKt.getFANCY_VAL()); - в исходниках использовался val System.out.println(2); - в исходниках использовался const val, т.е. здесь компилятор напрямую закидывал значение константы
@programmerlearner4631
@programmerlearner4631 Жыл бұрын
а константа это разве не read-only переменная?
@aquinary.
@aquinary. Жыл бұрын
@@programmerlearner4631 константы определяются во время компиляции. val - во время выполнения. Немножчеко разное
@felinooper6300
@felinooper6300 Жыл бұрын
@@aquinary. это принципиально на что-то влияет?
@aquinary.
@aquinary. Жыл бұрын
@@felinooper6300 это надо знать, чтобы не путаться в терминах.
@maximshirshov9532
@maximshirshov9532 6 ай бұрын
@@programmerlearner4631 константа и read-obly переменная это совершенно разные вещи и путать такое нельзя. Особенно когда используется lazy инициализация readOnly переменных.
@skanta
@skanta 3 жыл бұрын
Лайк заранее. Вернусь через пару недель после ЕЕ и Спринга=)
@wildjoe6259
@wildjoe6259 3 жыл бұрын
EE и Spring за пару недель? - Мужчина! ))
@skanta
@skanta 3 жыл бұрын
@@wildjoe6259, есть разница изучить азы и стать синьором. Так что всё зависит от поставленной цели:)
@botsynth
@botsynth 3 ай бұрын
@@skanta как успехи?
@h_worker1826
@h_worker1826 3 жыл бұрын
Надеюсь будет больше уроков про Котлин
@Serjoo88
@Serjoo88 2 жыл бұрын
Топовое видео и язык хороший
@mrclement5397
@mrclement5397 3 жыл бұрын
Спасибо за видео. Третья задача: return list.groupBy { it.toSet() }. values.toList()
@paveltroev8221
@paveltroev8221 5 ай бұрын
функциональный подход.. а ТС похоже императивщик )
@amadeusvsl
@amadeusvsl 2 жыл бұрын
Спасибо!
@Minamiawaji
@Minamiawaji Жыл бұрын
Очень удобная программа
@T-Ihor-T
@T-Ihor-T 3 жыл бұрын
Kotlin очень полюбил после Java.
@alexbadylevich7236
@alexbadylevich7236 2 жыл бұрын
жаль несколько лайкосов не поставить) очень годный урок
@gera.v.v
@gera.v.v Жыл бұрын
Круто. Есть 2 топовых java учителя Alishev и dmDev. И кто круче- я не знаю. Лайк
@user-je3zr7cl1q
@user-je3zr7cl1q 2 жыл бұрын
1. Первая задача просто не решена: в алгоритмических задачах подразумевается решение с требуемой вычислительной сложностью, а не любое работающее. Здесь представлено решение со сложностью O(n^2), а есть решение с O(n log n) - отсортировать массивы, потом пройтись по ним и "выловить" все пары. 2. Во второй задаче, алгоритмически-то решено правильно, но из-за использование конкатенации строк в цикле (что приводит к созданию новой строки и копированию в неё старой на каждой итерации) в результате общая вычислительная сложность опять получается O(n^2). Тут конечно нужно StringBuilder использовать. Ну и дублирование кода внутри цикла и после него - это ужасно конечно. 3. Тут решено с нужной сложностью, но слишком громоздкий код (да ещё создаётся куча лишних объектов). На этой задаче как раз можно было применить упомянутую функцию groupBy. Решается в одну строчку: fun groupWords(words: Array) = words.groupBy { String(it.toCharArray().apply { sort() }) }.values
@anthonyas1930
@anthonyas1930 Жыл бұрын
Спасибо, вполне хороший урок. Для человека, который уже в проге и просто нужно освоиться в новом языке, на 2х вполне неплохо смотреть, хотя хотелось бы даже побыстрее
@iskhak20
@iskhak20 2 жыл бұрын
то что искал
@user-ky2zi4fp9r
@user-ky2zi4fp9r 2 жыл бұрын
Спаксибо, отличное видео! Я закончил курсы ява андроид, но на работу не берут, потому что нужен котлин. Посмотрел видео и в первом приближении понял отличия котлина от явы. Видео идеально как "getting started" при переходе с явы.
@mon_541
@mon_541 2 жыл бұрын
долго учились ,сложно?наверное сразу котлин начинать не реально без знаний основ
@user-ky2zi4fp9r
@user-ky2zi4fp9r 2 жыл бұрын
@@mon_541 да нет, как и любой другой язык, котлин можно учить в качестве первого языка. Просто нужно найти подробный курс по Котлину, где будет все рассказано с самого начала- типы данных, условные операторы и т.д. Но так как котлин и ява на 90% одинаковы, а яву я изучил, то я посмотрел несколько видео, прошел еще дополнительно простой бесплатный курс на степике и тем самым освоил котлин на приемлемом уровне. Вообще, если вы не программист(например на другом языке, 1С или типа того) я бы советовал учиться не по интернет-курсам, а пойти на годовые курсы в реале. При самостоятельном обучении в инете вы вы не сможете поддерживать высокую интенсивность обучения и мотивации. Суть обучения на годовых курсах в реале: занятия раз в неделю по 6 часов, далее задают домашнее задание, вы его выполняете. Процесс обучения происходит именно тогда, когда вы выполняете дз. Теория важна, но практика- наше все. Учиться на таких курсах не сложно, просто нужно выделять время хотя бы по час-два в день, чтобы делать дз. В группе у нас в основном были люди старше 30 лет, так что в любом возрасте можно освоить программирование. Не пожалейте 1000$ за год.
@mon_541
@mon_541 2 жыл бұрын
@@user-ky2zi4fp9r спасибо огромное, за подробную инструкцию, это реально было важно для меня))а то сколько не искал инфы всё не то, вроде для начинающих искал в то же время столько непонятного
@objectobj
@objectobj 2 жыл бұрын
@@user-ky2zi4fp9r плохой совет подойдёт только таким же, как ты
@adamandsteve13
@adamandsteve13 Жыл бұрын
* джава, и никак иначе
@Das.Kleine.Krokodil
@Das.Kleine.Krokodil Жыл бұрын
<a href="#" class="seekto" data-time="496">8:16</a> Классно. Подобно в питоне можно делать. Когда изучал джаву, то думал почему же не сделали так как в питоне
@alexeydeyev4970
@alexeydeyev4970 3 жыл бұрын
У меня экран стал липкий от количества синтаксического сахара! П.С. видос и сам язык топ!
@toroloco7881
@toroloco7881 3 жыл бұрын
Супер! Продолжение планируется?)
@alishevN
@alishevN 3 жыл бұрын
А какие там могут быть темы?
@toroloco7881
@toroloco7881 3 жыл бұрын
@@alishevN например scope operators: let, also, run, with... Вечно в них путаюсь(
@specialist-pt8yo
@specialist-pt8yo 3 ай бұрын
best video tnks
@AlexJPep
@AlexJPep 10 ай бұрын
Так же было бы неплохо показать в последней задачке как класть элемент через Map.compute вместо if/containsKey, как раз было бы красивее и можно было бы элвиса запряч, когда текущий val был бы null :) (тем более если задачи из "яндекса")
@user-bq6gm2tq4c
@user-bq6gm2tq4c 8 ай бұрын
дякую
@Ucicke
@Ucicke 11 ай бұрын
ты же в начале рассказывал про groupBy, а сам вручную его реализовал по сути fun groupWords(words: List): List { return words .mapIndexed { idx, it -> idx to it.asIterable().sorted().joinToString("") } .groupBy { it.second } .values.map { it.map { words[it.first] } } }
@user-gh3ph3qz4i
@user-gh3ph3qz4i 7 ай бұрын
Крутий відос
@user-kx6bo9pf1f
@user-kx6bo9pf1f 2 жыл бұрын
красавчик
@CarboardTrain
@CarboardTrain 11 ай бұрын
Код "Привет, Мир!" на Kotlin вернул меня в "злые" 90е, когда мы дружно и незабвенно писали на Турбо Паскале. Там "Hello World" выглядит не на много иначе: program Hello; begin writeln ('Hello, world.'); end. Мне действительно 3000 лет и я действительно был там...
@objectobj
@objectobj 2 жыл бұрын
А я последнюю задачу сделал путём подсчёта суммы значений символов и затем сравнения таких сумм других строк.
@timpopov2808
@timpopov2808 2 жыл бұрын
Хорошее видео, но задачи решаются с представленными возможностями куда проще. 3 задача без учета ввода и вывода 2 сроки.
@qsinwakrttk5698
@qsinwakrttk5698 3 жыл бұрын
Первая задача получилась что-то знатно короче: execOne(one: IntArray, two: IntArray): List { return one.filter { it -> it in two }.sorted()
@alishevN
@alishevN 3 жыл бұрын
execOne(intArrayOf(1, 1, 1), intArrayOf(1, 1)) Работает неправильно
@MrYura999
@MrYura999 2 жыл бұрын
у меня как то так: val a = arrayOf(1,2,3,2,0) val b = arrayOf(5,1,2,7,3,2) var bCopy = b.toMutableList() println(a.filter { if (bCopy.contains(it)) { bCopy.remove(it); true } else false })
@cybersportnews2754
@cybersportnews2754 Ай бұрын
Яндекс обычно требует задачи решать без готовых функций т.е через логику и написание функций самому с помощью циклов и прочей, если ты решишь через готовый toHashSet они даже не смотрят) накидал запару минут может не очень красиво но понятно и просто for (item in a){ if ( b.contains(item)){ c.add(item) b.remove(item) } } первая задача
@romankryvolapov7961
@romankryvolapov7961 3 жыл бұрын
Хорошее видео, но не охватил let{} run{} и тд, а они используются очень часто, также suspend, launch и job
@johnconstantine6331
@johnconstantine6331 23 күн бұрын
Блин, аргументы по умолчанию реально крутая фича. Печально, что в джаве их нет
@andreyi5132
@andreyi5132 2 жыл бұрын
Третья задача на лямбдах fun listGrouper(input:List) : List{ return input .groupBy(keySelector = { it.toCharArray().sorted() }, valueTransform = { it } ) .map { it.value } }
@user-sq4yd3fg4k
@user-sq4yd3fg4k 2 жыл бұрын
Решение задач понравилось, всегда интересно наблюдать как у других людей голова работает) я вообще не шарю в котлине так что чисто алгоритмически скажу как бы сделал на питоне: в первой я бы создал 3й список. И его заполнял следующим образом: цикл фор первого списка по второму списку, при встрече совпадения - записать цифру в третий список, выкинуть эту цифру со второго списка и оператор continue (гугл говорит он в котлине тоже есть). И того третий список соберётся как надо. Вторая задача: примерно так же бы сделал но с одним изменением - я бы в начале CurrentLetter - пустой строкой и когда бы встречал другую букву считал бы их количество в строке, таким образом не пришлось бы потом отдельно писать кусок кода для обработки последней буквы. Третью я бы наверно также сделал.
@user-db9sk6uf7w
@user-db9sk6uf7w 3 жыл бұрын
В задачках на кол-во букв. Есть функция сортировки. А потом часть алг-ма как автор показал.
@Tolyan991
@Tolyan991 3 жыл бұрын
Коммент по поводу функций, когда метод находился вне класса, т. е. в процедурных языках программирования, таких как C/C++/Pascal и ещё куче языков, то он называется либо функций, либо процедурой. В зависимости от типа возвращаемого значения. void - процедура, потому что ничего не возвращает. Функция - int, double, string и т. д., потому что выполняет return в конце своей работы. А в ООП, что функцию, что процедуру называют методом. А это значит что Kotlin поддерживает процедурный стиль программирования.
@alishevN
@alishevN 3 жыл бұрын
Да, верно
@user-ee6oz8bu6m
@user-ee6oz8bu6m 2 жыл бұрын
кайф
Роман Елизаров - Корутины в Kotlin
59:04
JPoint, Joker и JUG ru
Рет қаралды 62 М.
КАРМАНЧИК 2 СЕЗОН 7 СЕРИЯ ФИНАЛ
21:37
Inter Production
Рет қаралды 546 М.
Despicable Me Fart Blaster
00:51
_vector_
Рет қаралды 17 МЛН
когда повзрослела // EVA mash
00:40
EVA mash
Рет қаралды 4,5 МЛН
Docker Для Начинающих за 1 Час | Docker с Нуля
52:43
Введение в корутины Kotlin (Kotlin Coroutines)
1:05:21
Рустам Курамшин
Рет қаралды 8 М.
#1 Что такое корутина. Важные особенности || Курс по корутинам
16:40
Android Broadcast. Все об Андроид разработке
Рет қаралды 87 М.
Изучение Java в одном видео уроке за час!
1:06:58
Гоша Дударь
Рет қаралды 1 МЛН
Как бы я начал учить кодинг сейчас?
12:15