Шаг 12.
Основы Kotlin.
Переменные, константы и типы. Объявление переменной

    На этом шаге мы рассмотрим особенности выполнения этой операции .

    Давайте создадим в TypeIntro.kt создадим первую переменную с именем experiencePoints и присвоим ей значение.

fun main() { 
  var experiencePoints: Int = 5 
  println(experiencePoints)
}


Рис.1. Содержимое функции

    Итак, мы создали переменную с типом Int и именем experiencePoints. Давайте подробнее рассмотрим, что у нас получилось.

    Мы определили переменную, используя ключевое слово var, которое начинает объявление новой переменной, и после ключевого слова указали ее имя.

    Дальше мы определили тип переменной: Int. Это означает, что experiencePoints будет хранить целое число.

    И, наконец, мы использовали оператор присваивания (=), чтобы присвоить значение справа (значение типа Int, а именно - 5) переменной слева (experiencePoints).

    На рисунке 2 показано объявление experiencePoints в виде диаграммы.


Рис.2. Схема объявления переменной

    После объявления значение переменной можно вывести в консоль с помощью функции println().

    Запустите программу, нажав Run рядом с функцией main() и выбрав Run 'TypeIntro. kt'. В консоли появится число 5, то есть значение, которое вы присвоили experiencePoints.


Рис.3. Выполнение программы

    Теперь попробуйте присвоить experiencePoints значение "thirty-two".

fun main() { 
  var experiencePoints: Int = "thirty-two" 
  println(experiencePoints)
}

    Запустите main(), снова щелкнув на кнопке запуска. На этот раз компилятор Kotlin сообщит об ошибке:

  Error:(2, 33) Kotlin: Type mismatch: inferred type is String but Int was expected


Рис.4. Выдача сообщения об ошибке

    Набирая код, вы могли заметить красное подчеркивание под "thirty-two". Так IntelliJ подсказывает вам, что в программе ошибка. Наведите указатель мыши на "thirty-two", чтобы прочитать описание обнаруженной проблемы.


Рис.5. Описание проблемы

    Kotlin использует статическую типизацию, то есть компилятор проверяет все типы в исходном коде, чтобы убедиться, что написанный код корректен. IntelliJ, в свою очередь, проверяет код в процессе набора и выделяет попытки присвоить переменной значение неверного типа. Это называется статической проверкой согласованности типов и помогает увидеть ошибки еще до компиляции кода.

    Чтобы устранить ошибку, надо заменить значение "thirty-two", присвоенное переменной experiencePoints, другим значением, соответствующим типу Int, например целым числом 5.

    В процессе работы программы переменной может быть присвоено другое значение. Добавим 5 к переменной experiencePoints, как показано ниже.

fun main() { 
  var experiencePoints: Int = 5 
  experiencePoints += 5
  println(experiencePoints)
}
Файл с проектом можно взять здесь.


Рис.6. Измененная программа

    После присвоения переменной experiencePoints значения 5 используйте оператор сложения с присваиванием (+=), чтобы увеличить переменную на 5. Запустите программу снова. В итоге в консоли появится число 10.


Рис.7. Результат работы программы

    На следующем шаге мы рассмотрим встроенные типы языка Kotlin.




Предыдущий шаг Содержание Следующий шаг