Урок 3: Интерполяция (шаблонные строки). Конкатенация // Котлин курс с нуля

Поділитися
Вставка
  • Опубліковано 25 лип 2024
  • 🔹 Тесты и практика по этому уроку: t.me/KotlinBasicsBot?start=yo...
    🔹 Текстовая версия урока: clck.ru/yXtTq
    🛠 Код из всех уроков: t.me/ievetrov_dev
    🛠 Личный телеграм канал про путь разработчика: t.me/ievetrov_dev
    ✅ Вопросы и ответы для Android собеседований: t.me/AndroidSprint_Interview
    🔹 Бесплатный курс по Android: clck.ru/376Zab
    🔹 VK: ievetrov.development
    Это выглядит не так страшно, как может показаться на первый взгляд. В этом уроке работаем со строками в Kotlin (тип String и символьный тип Char). Разберем простые операции по склейке строк с помощью знака плюс (конкатенация строк). Выясним, что применяя интерполяцию (string templates) не стоит терять сознание, а скорее даже наоборот - строковые шаблоны, которые еще называют динамические строки, это весьма приятно и невероятно удобно. И, наконец, немного затронем многострочные записи и какими методами эти записи можно сделать красивыми и изящными.
    00:00 Сложение строк (конкатенация)
    02:02 Строковые шаблоны (интерполяция строк)
    03:18 Шаблонная строка с выражением
    04:00 Многострочный текст (тройные кавычки)
    #kotlin #котлин #программирование

КОМЕНТАРІ • 32

  • @ievetrov
    @ievetrov  2 роки тому +1

    Ссылки и содержание:
    🔹 Тесты и практика по этому уроку: t.me/KotlinBasicsBot?start=youtube
    🔹 Текстовая версия урока: clck.ru/yXtTq
    🛠 Код из всех уроков: t.me/ievetrov_dev
    🛠 Личный телеграм канал про путь разработчика: t.me/ievetrov_dev
    ✅ Вопросы и ответы для Android собеседований: t.me/AndroidSprint_Interview
    🔹 Бесплатный курс по Android: clck.ru/376Zab
    🔹 VK: vk.com/ievetrov.development
    00:00 - 02:02 - Сложение строк (конкатенация)
    02:02 - 03:18 - Строковые шаблоны (интерполяция строк)
    03:18 - 04:00 - Шаблонная строка с выражением
    04:00 - 06:16 - Многострочный текст (тройные кавычки)

  • @user-jh8uv2ec9t
    @user-jh8uv2ec9t 4 місяці тому +1

    Спасибо, друг. Хорошо объяснил - долго пытался разобраться в этой теме. Благодарю

  • @user-dv1yq6mp7f
    @user-dv1yq6mp7f Рік тому +7

    Класс! Пока Котлин кажется очень приятным и понятным))

    • @ievetrov
      @ievetrov  Рік тому +2

      это великолепно! в целом, так и есть))

  • @abdurohmanusarov4392
    @abdurohmanusarov4392 Рік тому +3

    Очень грамотно и четко объяснение

  • @Kyrgyzboyfriend
    @Kyrgyzboyfriend 5 місяців тому

    Спасибо, очень доступно, голос, интонация и скорость речи все отлично 👍🏻

  • @rashedulislam2220
    @rashedulislam2220 Рік тому +2

    Хотя Кэтлин кажется очень милой.класс!

  • @shakhlokh
    @shakhlokh 5 місяців тому

    Спасибо большое за ваши уроки!

  • @earningsonlyfans
    @earningsonlyfans Рік тому +1

    Грамотно сделал, мне нравиться) По полочкам и примерам)

    • @ievetrov
      @ievetrov  Рік тому

      благодарю за фидбек!

  • @Galyaminsky
    @Galyaminsky 2 роки тому +1

    Спасибо!

  • @alexeysvetlenko2217
    @alexeysvetlenko2217 9 місяців тому +1

    ух - молодец

  • @svodeniyamuzbIk
    @svodeniyamuzbIk 5 місяців тому +1

    Какой милый котик на сайте))), какую функцию в команде выполняет?

    • @ievetrov
      @ievetrov  5 місяців тому +2

      Помогает в ревью 😌💜

  • @user-ti6xy7tf6m
    @user-ti6xy7tf6m Рік тому +1

    Было бы хорошо ещё добавить про сложение переменных внутри "шаблона"
    т.е. например ${userName + name}, а именно нюанс в том, что не нужно внутри фигурных скобок заново вызывать через доллар, я понял это опытным путём.

    • @ievetrov
      @ievetrov  Рік тому

      с одной стороны да, с другой все кейсы по каждой теме охватывать, будет скучно и затянуто) а опытный путь - часть обучения)

    • @sportfun9713
      @sportfun9713 Місяць тому

      Конечно не нужно. Это не фигурные скобки, а лямда - функция.

  • @user-yy8du7fw2i
    @user-yy8du7fw2i Рік тому +1

    Привет. После видео пошел проходить тесты. В тестах есть вещи не освещенные в видео, например сравнение строк. Тут предолагается, что дополнительно необходимо изучить тему в других источниках или это рассинхрон какой то?)

    • @ievetrov
      @ievetrov  Рік тому

      Привет) спасибо большое, что подметил это. На самом деле по ходу рассинхрон случился, потому что по задумке тесты должны закреплять материал именно из видосиков. Дополнительные вещи по моему мнению на данном этапе будут излишни. Пройдусь по материалам в ближайшую неделю и скорректирую)

  • @mistercat1003
    @mistercat1003 Рік тому +1

    не понял, как написать функцию с помощью многострочного интерполирования
    наверное, рано подняли эту тему

    • @ievetrov
      @ievetrov  Рік тому

      Чтобы создать многострочный вывод можно использовать строку в “““тройных кавычках”””

  • @user-dv1yq6mp7f
    @user-dv1yq6mp7f Рік тому +1

    Блин, всё равно у меня есть вопросы)))
    Подскажите пожалуйста, почему если мы подразумеваем, что имя пользователя всегда будет разное, то все равно использовали val userName = "Звездный Лорд" , a не использовали здесь var.
    Как же тогда будет меняться имя, если другой пользователь будет вносить свое имя, то есть изменять переменную на свою?.. Думаю. что нужно было написать var. Я наверное плохо поняла тему...
    Или когда следующий пользователь будет вносить свое имя, то в коде это отобразится как, ну например:
    val userName1 = "Люк Скайуокер", а у следующего пользователя уже будет val userName2 = "Хан Соло" и т.д.?

    • @ievetrov
      @ievetrov  Рік тому +2

      Вы верно обратили внимание на объявление имени через var. Надо сказать, что это основы и многие вещи конечно же упрощены. Мы держим в уме, что скорее всего это должна быть изменяемая переменная, так как гипотетическая реализация подразумевает обновление этой переменной новыми именами. Но требования программы и ее реализация может иметь очень много вариантов и в продуктовой программе реализация будет несколько замысловатее)
      Однако, в этом примере мы не инициализировали переменную другими именами в коде, не перезаписывали. Например, не заполняли ее данными из консоли через readLine(). Поэтому с точки зрения синтаксиса все легально.
      По поводу следующих пользователей. Плодить переменные точно не нужно) Допустим, можно использовать одну переменную-носитель для занесения каждого пользователя в какую-нибудь коллекцию. В условную базу. Затем доставать и отображать для каждого пользователя его личные данные.

    • @user-dv1yq6mp7f
      @user-dv1yq6mp7f Рік тому

      @@ievetrov 👍

  • @silkshop
    @silkshop 8 місяців тому

    Я так понимаю на 4:00 отсылка к автостопом по галактике?)

  • @Shogun12442
    @Shogun12442 Рік тому

    У меня почему-то значок доллара не работает, без него всё нормально, а с ним ошибку выдаёт.

    • @ievetrov
      @ievetrov  Рік тому

      нужен полный код для понимания контекста) можно написать мне в лс в телеге или вк, разберемся с проблемой

    • @Shogun12442
      @Shogun12442 Рік тому

      @@ievetrov у меня банально значок доллара не выделяется другим цветом, печатается как обычный символ и подчёркивается красным, Android studio flamingo

    • @ievetrov
      @ievetrov  Рік тому

      @@Shogun12442 ну что-то не так написано (или не там). без контекста непонятно

    • @hashstalker
      @hashstalker Рік тому

      @@Shogun12442 на сколько я понимаю, доллар (для ссылки на переменную или реализации выражения) прописывается в строке, т.е. в тексте, выделенным двойными кавычками. Там он сразу выделяется другим цветом. Видимо $ написан не в текстовой строке.

    • @Shogun12442
      @Shogun12442 Рік тому

      @@hashstalker именно так, я уже сам разобрался что тупанул)