Функция toString
Функция toString возвращает строковое представление объекта.
Все классы в Kotlin наследуют эту функцию от базового класса Any.
По умолчанию функция возвращает строку, содержащую имя класса и хеш-код объекта,
но её можно переопределить в пользовательских классах для возврата
осмысленного строкового представления.
Синтаксис
kotlinopen fun toString(): String
Пример
Использование toString по умолчанию для простого объекта:
kotlinval obj = Any()
val res = obj.toString()
println(res)
Результат выполнения кода:
kotlinjava.lang.Object@1b6d3586
Пример
Использование toString для базовых типов данных:
kotlinval num = 42
val dbl = 3.14
val flag = true
println(num.toString())
println(dbl.toString())
println(flag.toString())
Результат выполнения кода:
kotlinString "42"
String "3.14"
String "true"
Пример
Переопределение toString в пользовательском классе:
kotlinclass Person(val name: String, val age: Int) {
override fun toString(): String {
return "Person(name=$name, age=$age)"
}
}
val person = Person("John", 30)
println(person.toString())
Результат выполнения кода:
kotlinString "Person(name=John, age=30)"
Пример
Неявный вызов toString при интерполяции строк:
kotlinval number = 123
val text = "The number is: $number"
println(text)
Результат выполнения кода:
kotlinString "The number is: 123"
Пример
Использование toString для коллекций:
kotlinval list = listOf(1, 2, 3, 4, 5)
val map = mapOf("a" to 1, "b" to 2)
println(list.toString())
println(map.toString())
Результат выполнения кода:
kotlinString "[1, 2, 3, 4, 5]"
String "{a=1, b=2}"