Функция toProperties

Функция toProperties преобразует коллекцию, состоящую из пар Pair<String, String>, в объект java.util.Properties. Каждая пара ключ-значение становится свойством в объекте Properties.

Импорт

kotlinimport kotlin.collections.toProperties

Синтаксис

kotlinfun <P : Pair<String, String>> Iterable<P>.toProperties(): Properties
kotlinfun <K, V> Map<out K, V>.toProperties(): Properties

Пример

Преобразуем список пар в объект Properties:

kotlinval pairs = listOf(
  "key1" to "value1",
  "key2" to "value2",
  "key3" to "value3"
)

val props = pairs.toProperties()
println(props.getProperty("key1"))

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

kotlinString "value1"

Пример

Преобразуем ассоциативный список в объект Properties:

kotlinval map = mapOf(
  "host" to "localhost",
  "port" to "8080",
  "debug" to "true"
)

val props = map.toProperties()
println(props.getProperty("port"))

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

kotlinString "8080"

Пример

Получим все свойства из объекта Properties:

kotlinval config = mapOf(
  "database.url" to "jdbc:mysql://localhost:3306/test",
  "database.user" to "admin",
  "database.password" to "secret"
)

val props = config.toProperties()

props.forEach { (key, value) ->
  println("$key = $value")
}

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

kotlindatabase.url = jdbc:mysql://localhost:3306/test
database.user = admin
database.password = secret

Пример

Используем toProperties с фильтрацией:

kotlinval settings = listOf(
  "theme" to "dark",
  "language" to "en",
  "notifications" to "true",
  "autoSave" to "false"
)

val enabledSettings = settings
  .filter { it.second == "true" }
  .toProperties()
  
println(enabledSettings.size())

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

kotlinInt 1

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

  • функцию toMap,
    которая преобразует коллекцию в карту
  • функцию toList,
    которая преобразует коллекцию в список
  • функцию toSet,
    которая преобразует коллекцию в множество
  • функцию toPair,
    которая создает пару из двух значений