0Pricing
Scala for Backend Engineering & Functional Programming · Урок

Базовые типы и литералы

Числа, логические значения и символы.

«Базовые типы и литералы» — бесплатный урок Scala for Backend Engineering & Functional Programming на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Scala for Backend Engineering & Functional Programming, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Scala for Backend Engineering & Functional Programming содержит 4 уроков всего.

Базовые типы Scala

Scala предоставляет небольшой набор встроенных типов значений, которые Вы будете постоянно использовать.

  • Int, Long для целых чисел
  • Double, Float для дробных чисел
  • Boolean, Char, String

Для каждого из них существует свой синтаксис литералов, позволяющий записывать значения непосредственно в коде.

Литералы Int

Целое число без десятичной точки по умолчанию имеет тип Int — это знаковое 32-разрядное целое число.

Для удобства чтения цифры можно разделять символами подчёркивания.

object Main extends App {
  val year = 2026
  val big = 1_000_000
  println(year + big)
}

Литералы Long

Если число слишком велико для Int или Вам просто нужны 64 разряда, добавьте суффикс L, чтобы получить тип Long.

Для ясности предпочтителен прописной L, а не строчный l.

val population: Long = 8_000_000_000L
val id = 42L

Литералы Double и Float

Число с десятичной точкой по умолчанию имеет тип Double. Добавьте суффикс f, чтобы получить тип Float.

Также можно использовать экспоненциальную запись с e.

object Main extends App {
  val price = 19.99
  val rate = 0.5f
  val mass = 6.02e23
  println(price)
}

Литералы Boolean

Boolean содержит ровно один из двух литералов: true или false.

Логические значения управляют условиями, сравнениями и логическими операторами, такими как && и ||.

object Main extends App {
  val isReady = true
  val isDone = false
  println(isReady && !isDone)
}

Литералы Char

Char — это один 16-разрядный символ Юникода, записанный в одинарных кавычках.

Не путайте его со строкой String из одного символа, которая записывается в двойных кавычках.

val grade = 'A'
val newline = '\n'
val letter: Char = 'z'

Литералы String

String — это текст, записанный в двойных кавычках. Строки можно объединять с помощью +.

В обычных строках работают escape-последовательности, такие как \n и \t.

object Main extends App {
  val first = "Func"
  val second = "tional"
  println(first + second)
}

Интерполяция строк

Добавьте к строке префикс s, чтобы встраивать выражения с помощью $name или ${expr}.

Это чище, чем объединение с помощью +, и является идиоматическим способом создания текста.

object Main extends App {
  val user = "Sam"
  val items = 3
  println(s"$user has ${items * 2} items")
}

Многострочные строки

Тройные кавычки """...""" создают необработанные многострочные строки, в которых escape-последовательности не обрабатываются.

Они отлично подходят для JSON, SQL и любых фрагментов текста, занимающих несколько строк.

val sql = """SELECT *
FROM users
WHERE active = true"""

Тип Unit

Unit — версия Scala для значения «ничего полезного», похожая на void в Java.

Единственный литерал этого типа — (). Функции, существующие только ради побочных эффектов, например println, возвращают Unit.

object Main extends App {
  val nothing: Unit = ()
  val result = println("side effect")
  println(result)
}

Типы образуют иерархию

Все эти типы значений являются подтипами AnyVal. Вместе с AnyRef он находится под Any — корнем всех типов Scala.

В нижней части иерархии находится Nothing, являющийся подтипом любого типа. Благодаря этой единой иерархии у каждого выражения всегда есть тип.

Быстрая проверка

Какой литерал соответствует каждому типу?

Итоги

Вы познакомились с основными типами значений Scala и их литералами.

  • Целые числа: Int, Long (с L).
  • Дробные числа: Double, Float (с f).
  • Boolean, Char (одинарные кавычки), String (двойные кавычки).
  • Интерполяция s"..." и Unit как пустое значение.

Часто задаваемые вопросы

Урок «Базовые типы и литералы» бесплатный?

Да — полный текст урока «Базовые типы и литералы» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Scala for Backend Engineering & Functional Programming, подпишись на CoddyKit PRO. Курс Scala for Backend Engineering & Functional Programming содержит 4 уроков всего.

Чему я научусь в уроке «Базовые типы и литералы»?

Числа, логические значения и символы. Ты практикуешь Scala for Backend Engineering & Functional Programming с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Scala for Backend Engineering & Functional Programming?

Предыдущий опыт не требуется. Scala for Backend Engineering & Functional Programming на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Базовые типы и литералы»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Scala for Backend Engineering & Functional Programming?

Да. Каждый урок Scala for Backend Engineering & Functional Programming включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. val и var
  2. Базовые типы и литералы
  3. Вывод типов
  4. Выражения вместо инструкций
← Назад к Scala for Backend Engineering & Functional Programming