Функция toString

Функция toString возвращает строковое представление элемента перечисления. Для enum классов эта функция по умолчанию возвращает имя константы в виде строки. Метод может быть переопределен для возврата пользовательского строкового представления.

Синтаксис

kotlinoverride fun toString(): String

Пример

Базовое использование toString для enum:

kotlinenum class Direction {
  NORTH, SOUTH, EAST, WEST
}

val dir = Direction.NORTH
println(dir.toString())

Результат выполнения кода:

kotlinString "NORTH"

Пример

Переопределение toString в enum классе:

kotlinenum class Color(val rgb: Int) {
  RED(0xFF0000) {
    override fun toString() = "Red color"
  },
  GREEN(0x00FF00) {
    override fun toString() = "Green color"
  },
  BLUE(0x0000FF) {
    override fun toString() = "Blue color"
  }
}

val col = Color.RED
println(col.toString())

Результат выполнения кода:

kotlinString "Red color"

Пример

Использование toString в выражении when:

kotlinenum class Status {
  ACTIVE, INACTIVE, PENDING
}

val status = Status.PENDING

when (status.toString()) {
  "ACTIVE" -> println("Active")
  "INACTIVE" -> println("Inactive")
  "PENDING" -> println("Pending")
}

Результат выполнения кода:

kotlinString "Pending"

Смотрите также

  • метод name,
    который возвращает имя enum константы
  • метод ordinal,
    который возвращает порядковый номер enum константы
  • метод values,
    который возвращает массив всех enum констант
  • метод valueOf,
    который возвращает enum константу по имени