Базовые типы и литералы
Числа, логические значения и символы.
«Базовые типы и литералы» — бесплатный урок 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 — локальная установка не требуется.
Все уроки этого курса
- val и var
- Базовые типы и литералы
- Вывод типов
- Выражения вместо инструкций