dir.by  
  Поиск  
Компьютер, программы
Kotlin
 Объявлем переменную и устанавливаем значение в Kotlin | val, var, lateinit, константа: const val, глобальная переменная: companion object 
посмотрели 940 раз
обновлено: 12 июля 2026
Пример 1. Объявляем переменную с модификатором val внутри class{ ... }
  Kotlin     Переменной внутри класса нужно сразу установить значение
class Book
{
     val myName: String                      // compile error: myName must be initialized
     val myName1: String = ""             // объявляем переменную myName1 и устанавливаем пустой текст
}


  Kotlin     val означает что устанавливаем значение только 1 раз и НЕ МОЖЕМ менять значение.
class Book
{
     val myName1: String = ""             // объявляем переменную myName1 и устанавливаем пустой текст
     fun showValue1()
     {
          myName1 = "Hello"                 // compile error: val can not be reassigned
     }
}


  Kotlin     val означает что устанавливаем значение только 1 раз и НЕ МОЖЕМ менять значение.
class Book
{
     val myName2: String = "Hello"      // объявляем переменную myName2 и устанавливаем текст Hello
     fun showValue2()
     {
          myName2 = "Evgen"                  // compile error: val can not be reassigned
     }
}


  Kotlin     Модификатор lateinit нельзя использовать с val.
class Book
{
     lateinit val myName3: String        // compile error: 'lateinit' modifier is allowed only on mutable local variables
}


  Kotlin     В объявлении переменной добавим символ ? и тогда переменной можно установить null это пустое значение.
class Book
{
     val myName4: String = null          // compile error: null can not be a value
     val myName5: String? = null        // объявляем переменную myName5 и устанавливаем null
}


  Kotlin     В объявлении переменной добавим символ ? и тогда переменной можно установить null это пустое значение. Помним что, val означает что устанавливаем значение только 1 раз и НЕ МОЖЕМ менять значение.
class Book
{
     val myName5: String? = null        // объявляем переменную myName5 и устанавливаем null
     fun showValue5()
     {
          myName5 = "Slava"                 // compile error: val can not be reassigned
     }
}


  Kotlin     В объявлении переменной добавим символ ? и тогда переменной можно установить null это пустое значение. Помним что, val означает что устанавливаем значение только 1 раз и НЕ МОЖЕМ менять значение.
class Book
{
     val myName6: String? = "Hello"   // объявляем переменную myName6 и устанавливаем текст Hello
     fun showValue6()
     {
          myName6 = "Thanks"                  // compile error: val can not be reassigned
     }
}
Пример 2. Объявляем переменную с модификатором var внутри class{ ... }
  Kotlin     Переменной внутри класса нужно сразу установить значение
class Book
{
     var myName: String                      // compile error: myName must be initialized
     var myName1: String = ""             // объявляем переменную myName1 и устанавливаем пустой текст
}


  Kotlin     var означает что можем менять переменную много раз.
class Book
{
     var myName1: String = ""             // объявляем переменную myName1 и устанавливаем пустой текст
     fun showValue1()
     {
          myName1 = "Hello"                  // устанавливаем текст Hello
     }
}


  Kotlin     var означает что можем менять переменную много раз.
class Book
{
     var myName2: String = "Hello"      // объявляем переменную myName2 и устанавливаем текст Hello
     fun showValue2()
     {
          myName2 = "Evgen"                  // устанавливаем текст Evgen
     }
}


  Kotlin     lateinit означает что можем установить значение позже.
class Book
{
     lateinit var myName3: String        // объявляем переменную myName3.
     fun showValue3()
     {
          myName3 = "Hello"                     // устанавливаем текст Hello
     }
}


  Kotlin     В объявлении переменной добавим символ ? и тогда переменной можно установить null это пустое значение.
class Book
{
     var myName4: String = null          // compile error: null can not be a value
     var myName5: String? = null        // объявляем переменную myName5 и устанавливаем null
}


  Kotlin     В объявлении переменной добавим символ ? и тогда переменной можно установить null это пустое значение.
class Book
{
     var myName5: String? = null        // объявляем переменную myName5 и устанавливаем null
     fun showValue5()
     {
          myName5 = "Hello"                  // устанавливаем текст Hello
     }
}


  Kotlin     В объявлении переменной добавим символ ? и тогда переменной можно установить null это пустое значение.
class Book
{
     var myName6: String? = "Hello"   // объявляем переменную myName6 и устанавливаем текст Hello
     fun showValue6()
     {
          myName6 = null                // устанавливаем null
     }
}
Пример 3. Объявляем переменную с модификатором val внутри fun{ ... }
  Kotlin     Переменной внутри функции можно потом установить значение. На заметку! переменной в классе надо сразу установить значение.
fun main()
{
     val myName: String            // объявляем переменную myName и можно потом установить значение
     myName = "Hello"             // устанавливаем текст Hello
     myName = "Evgen"            // compile error: val can not be reassigned
}


  Kotlin     val означает что устанавливаем значение только 1 раз и НЕ МОЖЕМ менять значение.
fun main()
{
     val myName1: String = ""             // объявляем переменную myName1 и устанавливаем пустой текст
     myName1 = "Hello"                 // compile error: val can not be reassigned
}


  Kotlin     val означает что устанавливаем значение только 1 раз и НЕ МОЖЕМ менять значение.
fun main()
{
     val myName2: String = "Hello"      // объявляем переменную myName2 и устанавливаем текст Hello
     myName2 = "Evgen"                  // compile error: val can not be reassigned
}


  Kotlin     Модификатор lateinit нельзя использовать с val.
fun main()
{
     lateinit val myName3: String        // compile error: 'lateinit' modifier is allowed only on mutable local variables
}


  Kotlin     В объявлении переменной добавим символ ? и тогда переменной можно установить null это пустое значение.
fun main()
{
     val myName4: String = null          // compile error: null can not be a value
     val myName5: String? = null        // объявляем переменную myName5 и устанавливаем null
}


  Kotlin     В объявлении переменной добавим символ ? и тогда переменной можно установить null это пустое значение. Помним что, val означает что устанавливаем значение только 1 раз и НЕ МОЖЕМ менять значение.
fun main()
{
     val myName5: String? = null        // объявляем переменную myName5 и устанавливаем null
     myName5 = "Slava"                 // compile error: val can not be reassigned
}


  Kotlin     В объявлении переменной добавим символ ? и тогда переменной можно установить null это пустое значение. Помним что, val означает что устанавливаем значение только 1 раз и НЕ МОЖЕМ менять значение.
fun main()
{
     val myName6: String? = "Hello"   // объявляем переменную myName6 и устанавливаем текст Hello
     myName6 = "Thanks"                  // compile error: val can not be reassigned
}
Пример 4. Объявляем переменную с модификатором var внутри fun{ ... }
  Kotlin     Переменной внутри функции можно потом установить значение. var означает что можем менять переменную много раз. На заметку! переменной в классе надо сразу установить значение.
fun main()
{
     var myName: String            // объявляем переменную myName и можно потом установить значение
     myName = "Hello"             // устанавливаем текст Hello
     myName = "Evgen"           // устанавливаем текст Evgen
}


  Kotlin     var означает что можем менять переменную много раз.
fun main()
{
     var myName1: String = ""             // объявляем переменную myName1 и устанавливаем пустой текст
     myName1 = "Hello"                 // устанавливаем текст Hello
}


  Kotlin     var означает что можем менять переменную много раз.
fun main()
{
     var myName2: String = "Hello"      // объявляем переменную myName2 и устанавливаем текст Hello
     myName2 = "Evgen"                  // устанавливаем текст Evgen
}


  Kotlin     lateinit означает что можем установить значение позже.
fun main()
{
     lateinit var myName3: String        // объявляем переменную myName3, а lateinit означает что можем установить значение позже.
     myName3 = "Hello"                      // устанавливаем текст Hello
}


  Kotlin     В объявлении переменной добавим символ ? и тогда переменной можно установить null это пустое значение.
fun main()
{
     var myName4: String = null          // compile error: null can not be a value
     var myName5: String? = null        // объявляем переменную myName5 и устанавливаем null
}


  Kotlin     В объявлении переменной добавим символ ? и тогда переменной можно установить null это пустое значение. Помним что, var означает что можем менять переменную много раз.
fun main()
{
     var myName5: String? = null        // объявляем переменную myName5 и устанавливаем null
     myName5 = "Slava"                 // устанавливаем текст Slava[/textcolor]
}


  Kotlin     В объявлении переменной добавим символ ? и тогда переменной можно установить null это пустое значение. Помним что, var означает что можем менять переменную много раз.
fun main()
{
     var myName6: String? = "Hello"   // объявляем переменную myName6 и устанавливаем текст Hello
     myName6 = "Thanks"                  // устанавливаем текст Thanks
     myName6 = null                         // устанавливаем пустое значение
}
Пример 5. Объявляем константу const val
const val это константа и должна объявляться на самом верхнем уровне (вне класса/функции).
const val должен соответствовать одному из примитивных типов (например, Int) или типу String

  Kotlin  
const val myName1: String = "Hello my friend"     // объявляем константу myName1 с текстом

const val myPrice1: Int = 24                               // объявляем константу myPrice1 с значением 24

fun main()
{
     const val myName2: String = "Thank you"         // compile error: Modifier 'const' is not applicable to 'local variable'

     const val myPrice2: Int = 47                            // compile error: Modifier 'const' is not applicable to 'local variable'
}


Отличие val от const val:
значение const val переменных устанавливается во время компиляции.
Значение const val переменной нужно присвоить значение сразу при определении.
значение val переменных устанавливается во время выполнения
Значение val переменной можно присвоить потом после опредления.
  Kotlin  
fun main() {
     val myName1: String
     // ...
     myName1 = "Hello"
}
Пример 6. Объявляем глобальную(статическую) переменную файла
Объявляем глобальную переменную на самом верхнем уровне (вне класса/функции)
Можно использовать var и val.
Глобальная переменная (в других языках программирования называют статической переменной).
Глобальная переменная означает, что эта переменная сама создается в памяти только 1 раз при запуске программы и уничтажается при остановки программы.
Глобальная переменная доступна везде (можно использовать в любом классе)

  Kotlin  
var booksCount: Int = 0            // объявляем глобальную переменную
var filmsCount: Int = 0             // объявляем глобальную переменную

class MyBook(bookName: String) {
     init {
          booksCount++          // используем глобальную переменную
     }
}

class MyFilm(bookName: String) {
     init {
          filmsCount++          // используем глобальную переменную
     }
}

fun main() {
     var book1 = MyBook("The three musketeers")
     var book2 = MyBook("House near lake")

     var film1 = MyFilm("Matrix")

     // используем глобальную переменную
     println(booksCount) // 2
     // используем глобальную переменную
     println(filmsCount) // 1
}
Пример 7. Объявляем глобальную(статическую) переменную класса используя companion object { ... }
Объявляем глобальную переменную класса используя companion object:
  Kotlin  
class MyInfo {

     companion object {
          var booksCount: Int = 0       // объявляем глобальную переменную класса
          var filmsCount: Int = 0       // объявляем глобальную переменную класса
     }

}

Можно использовать var и val.
Глобальная переменная (в других языках программирования называют статической переменной).
Глобальная переменная означает, что эта переменная сама создается в памяти только 1 раз при запуске программы и уничтажается при остановки программы.
Глобальная переменная доступна везде (можно использовать в любом классе)

  Kotlin  
class MyInfo {

     companion object {
          var booksCount: Int = 0       // объявляем глобальную переменную класса
          var filmsCount: Int = 0       // объявляем глобальную переменную класса
     }

}

class MyBook(bookName: String) {
     init {
          MyInfo.booksCount++          // используем глобальную переменную
     }
}

class MyFilm(bookName: String) {
     init {
          MyInfo.filmsCount++          // используем глобальную переменную
     }
}

fun main() {
     var book1 = MyBook("The three musketeers")
     var book2 = MyBook("House near lake")

     var film1 = MyFilm("Matrix")

     // используем глобальную переменную
     println(MyInfo.booksCount) // 2

     // используем глобальную переменную
     println(MyInfo.filmsCount) // 1
}


На заметку!
Внутри companion object можно использовать и методы:
  Kotlin  
companion object {
     var booksCount: Int = 0
     var filmsCount: Int = 0
     fun showMy() {
          println("books created: $booksCount, films created: $filmsCount")
     }
}
 
← Предыдущая тема
Создание нового консольного проекта для изучения Kotlin | IntelliJ IDEA
 
Следующая тема →
null значение используем символ ? и ?. и !! и ?: и !!. и ?. в Kotlin
 
Ваши Отзывы ... комментарии ...
   
Вашe имя
Ваш комментарий (www ссылки может добавлять только залогиненный пользователь)

  Объявления  
  Объявления  
 
Что такое Kotlin ?
Почему самой популярной средой разработки для Kotlin является IntelliJ IDEA?
Скачать и установить IntelliJ IDEA для изучения Kotlin
Создание нового консольного проекта для изучения Kotlin | IntelliJ IDEA
Устанавливаем значение
Объявлем переменную и устанавливаем значение в Kotlin | val, var, lateinit, константа: const val, глобальная переменная: companion object
null
null значение используем символ ? и ?. и !! и ?: и !!. и ?. в Kotlin
Int, Float, Boolean, Char ...
Целые числа в Kotlin: Byte, UByte, Short, UShort, Int, UInt, Long, ULong
Десятичные числа в Kotlin: Float, Double
Флаг со значениями true или false в Kotlin это: Boolean
Символ в Kotlin это: Char
Конвертация числа в текст на языке Kotlin | Int → String
String
Строка, текст в Kotlin это: String
Интерполяция строк в Kotlin. Пример: val address:String = "${street}, ${country}"
В чем отличие String и StringBuilder ?
Enum
Что такое перечисление (enum) в Kotlin ?
Как найти enum по значению в Kotlin ?
Функция
fun() { ... } - это функция в Kotlin. Функция нужна чтобы выполнить действие.
Лямбда функция
Лямбда функция в Kotlin. Пример1: var myFunc1 : (a:Int, b:Int) -> Int = { p1, p2 -> p1 + p2 };
Коллекции и массивы
Создаем коллекции list, set, map и массив array в Kotlin
Class
Что такое class в Kotlin? Пример: class MyBook { ... } | первичный и вторичный конструктор | блок init
lateinit это поздняя инициализация для поля class | Kotlin
class, который наследует от интерфейса в Kotlin | Пример: class MyBook : IBook { ...}
Безымянный class, который наследует от интерфейса в Kotlin | Пример: val book1 = object : IBook { ...}
Общий, template class в Kotlin | Пример: class MyBook<T> { ... }
Пишем программу
Консольное Kotlin приложение работает как Android Jetpack Compose

  Ваши вопросы присылайте по почте: info@dir.by  
Яндекс.Метрика