День 4
Автоматическое определение типов
Котлин поддерживает автоматическое определение типов, поэтому тип можно не указывать, когда он явен сам по себе.
Поэтому убираем ручное определение типов для наших переменных:
fun main() { //Создаем имя игрока. val playerName = "Михаил" // Создаём переменную и присваиваем ей значение. var exPoints = 5 // Получается переменная типа Int. exPoints += 5 // Добавляем 5 очков. println(exPoints) // Выводим в консоль значение переменной exPoints. println(playerName) // Выводим туда же имя игрока. }
Константы времени компиляции
Короче, говорят, что val можно менять, но про это расскажут потом. А если надо совсем не менять никогда ничего, то для этого нужны константы времени компиляции.
Эти штуки выполняются в процессе компиляции, в отличие от всего остального, которое выполняется после компиляции, в процессе выполнения программы.
Какая-то шняга, короче. Не понимаю.
Добавим в нашу программу такую константу перед функцией main.
const val MAX_EXP = 5000 // Это значение будет постоянным, его нельзя будет поменять в процессе выполнения программы. fun main() { //Создаем имя игрока. val playerName = "Михаил" // Создаём переменную и присваиваем ей значение. var exPoints = 5 // Получается переменная типа Int. exPoints += 5 // Добавляем 5 очков. println(exPoints) // Выводим в консоль значение переменной exPoints. println(playerName) // Выводим туда же имя игрока. }
Имя у такой константы рекомендуется писать заглавными буквами, а пробелы — нижним подчеркиванием.
Байт-код Котлина
Хз, чё это такое, не понял объяснения в книге. Понял только, что этой штукой можно увидеть байт-код, который можно декомпилировать в код Java. Типа посмотреть, как будет выглядеть котлиновский код на языке Java. Наверно, это важно. Будущее покажет.
Итоги главы.
- var и val — в зависимости от того, будут меняться переменные потом или не будут.
- константы — это которые никогда не меняются.
- автоматическое определение типов — чтоб меньше тыкать по клавишам.
Впереди — условные конструкции.
Итого на катку ушло минут 30.
Всего на пути понимания Котлина прошло 3:30 часа.