Функция toString
Функция toString преобразует объект
в его строковое представление. Применяется
ко всем типам данных, включая примитивные
типы, массивы, коллекции и пользовательские классы.
Для пользовательских классов можно переопределить
стандартное поведение метода.
Синтаксис
// Для любого объекта
fun Any?.toString(): String
// С указанием системы счисления (для чисел)
fun Int.toString(radix: Int): String
fun Long.toString(radix: Int): String
Пример
Преобразуем число 42 типа Int в строку:
val num: Int = 42
val res: String = num.toString()
println(res)
Результат выполнения кода:
String "42"
Пример
Преобразуем число 42 типа Int
в двоичную систему счисления:
val num: Int = 42
val res: String = num.toString(2)
println(res)
Результат выполнения кода:
String "101010"
Пример
Преобразуем число 15.75 типа Double в строку:
val num: Double = 15.75
val res: String = num.toString()
println(res)
Результат выполнения кода:
String "15.75"
Пример
Преобразуем булево значение true в строку:
val flag: Boolean = true
val res: String = flag.toString()
println(res)
Результат выполнения кода:
String "true"
Пример
Преобразуем массив чисел в строку:
val arr: Array<Int> = arrayOf(1, 2, 3, 4, 5)
val res: String = arr.toString()
println(res)
Результат выполнения кода:
String "[Ljava.lang.Integer@4e50df2e"
Пример
Для корректного преобразования массивов
используйте функцию contentToString:
val arr: Array<Int> = arrayOf(1, 2, 3, 4, 5)
val res: String = arr.contentToString()
println(res)
Результат выполнения кода:
String "[1, 2, 3, 4, 5]"
Пример
Переопределение метода toString
в пользовательском классе:
class 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())
Результат выполнения кода:
String "Person(name='John', age=30)"