Вывод типов для литералов
Управляйте тем, станет ли литерал типом Int или Double.
«Вывод типов для литералов» — бесплатный урок Swift Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Swift Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Swift Academy содержит 4 уроков всего.
Типы литералов по умолчанию
Для каждого вида литералов есть тип, выводимый по умолчанию: целые числа становятся Int, числа с плавающей точкой — Double, текст — String, а значения true и false — Bool.
let i = 5
let d = 5.0
let s = "5"
let b = true
print(type(of: i), type(of: d), type(of: s), type(of: b))let x = 5 — это Int
Целочисленный литерал без десятичной точки всегда получает тип Int — целочисленный тип платформы по умолчанию.
let x = 5
print(type(of: x))
print(x + 1)let y: Double = 5
Явное указание Double позволяет тому же литералу 5 стать значением с плавающей точкой.
let y: Double = 5
print(type(of: y))
print(y / 2)Десятичная точка задаёт Double
Запись 5.0 выводит тип Double, поэтому явно указывать тип не нужно.
let z = 5.0
print(type(of: z))
print(z * 2)Int и Double не смешиваются
Swift не выполняет неявное преобразование между числовыми типами. Чтобы объединить Int и Double, необходимо выполнить явное преобразование.
let count = 3
let price = 1.5
let total = Double(count) * price
print(total)Float и Double
Для десятичных чисел по умолчанию используется Double. Укажите Float, если Вам нужен именно меньший 32-битный тип.
let big = 3.14
let small: Float = 3.14
print(type(of: big), type(of: small))Явное указание целочисленных типов
Явно укажите тип, чтобы выбрать целое число определённого размера, например Int8 или UInt, вместо Int по умолчанию.
let tiny: Int8 = 120
let unsigned: UInt = 9
print(type(of: tiny), type(of: unsigned))String и Character
Литерал в двойных кавычках получает тип String. В контексте одного символа с помощью явного указания типа можно получить Character.
let word = "Swift"
let letter: Character = "S"
print(type(of: word), type(of: letter))Логические литералы
Ключевые слова true и false получают тип Bool.
let isReady = false
print(type(of: isReady))Литералы в выражениях
Когда в одном выражении смешиваются литералы, Swift выбирает общий тип. В выражении 1 + 2.0 целочисленный литерал рассматривается как Double.
let mixed = 1 + 2.0
print(mixed)
print(type(of: mixed))Явное указание адаптирует литерал
Сам литерал гибок, а явное указание типа определяет его итоговый тип. Поэтому let y: Double = 5 работает без записи 5.0.
let a: Double = 7
let b: Float = 7
print(a, b)Быстрая проверка
Проверьте вывод типов литералов.
Итоги
Целочисленные литералы по умолчанию получают тип Int, а десятичные — Double. Явные указания типа, такие как : Double, : Float, : Int8 или : Character, переопределяют значение по умолчанию, адаптируя гибкий литерал. Числовые типы никогда не преобразуются неявно.
let i = 5
let d: Double = 5
print(type(of: i), type(of: d))Часто задаваемые вопросы
Урок «Вывод типов для литералов» бесплатный?
Да — полный текст урока «Вывод типов для литералов» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Swift Academy, подпишись на CoddyKit PRO. Курс Swift Academy содержит 4 уроков всего.
Чему я научусь в уроке «Вывод типов для литералов»?
Управляйте тем, станет ли литерал типом Int или Double. Ты практикуешь Swift Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Swift Academy?
Предыдущий опыт не требуется. Swift Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Вывод типов для литералов»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Swift Academy?
Да. Каждый урок Swift Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Как работает вывод типов
- Когда добавлять явные аннотации
- Вывод типов для литералов
- Вывод типов в замыканиях