Функция toMutableList
Функция toMutableList
преобразует исходную коллекцию
в новый изменяемый список типа MutableList
.
Применяется к массивам, спискам, множествам и другим коллекциям.
Возвращает новый объект списка, который можно изменять.
Синтаксис
fun <T> Array<out T>.toMutableList(): MutableList<T>
fun <T> Collection<T>.toMutableList(): MutableList<T>
fun <T> Iterable<T>.toMutableList(): MutableList<T>
Пример
Преобразуем массив чисел в изменяемый список:
val numbersArray = arrayOf(1, 2, 3, 4, 5)
val mutableNumbers = numbersArray.toMutableList()
mutableNumbers.add(6)
mutableNumbers.remove(3)
println(mutableNumbers)
Результат выполнения кода:
MutableList<Int> [1, 2, 4, 5, 6]
Пример
Преобразуем неизменяемый список в изменяемый:
val immutableList = listOf('a', 'b', 'c')
val mutableList = immutableList.toMutableList()
mutableList.add('d')
mutableList[0] = 'x'
println(mutableList)
Результат выполнения кода:
MutableList<Char> ['x', 'b', 'c', 'd']
Пример
Преобразуем множество в изменяемый список:
val numberSet = setOf(10, 20, 30)
val numberList = numberSet.toMutableList()
numberList.add(40)
numberList.sort()
println(numberList)
Результат выполнения кода:
MutableList<Int> [10, 20, 30, 40]
Пример
Создаем изменяемый список из диапазона чисел:
val range = 1..5
val mutableFromRange = range.toMutableList()
mutableFromRange.add(6)
println(mutableFromRange)
Результат выполнения кода:
MutableList<Int> [1, 2, 3, 4, 5, 6]
Примечания
Функция toMutableList
создает новый объект списка,
поэтому изменения в полученном списке не влияют
на исходную коллекцию.
val original = listOf(1, 2, 3)
val mutable = original.toMutableList()
mutable.add(4)
println("Original: $original")
println("Mutable: $mutable")
Результат выполнения кода:
Original: [1, 2, 3]
Mutable: [1, 2, 3, 4]
Смотрите также
-
функцию
toList
,
которая преобразует коллекцию в неизменяемый список -
функцию
toSet
,
которая преобразует коллекцию в множество -
функцию
mutableListOf
,
которая создает изменяемый список напрямую -
функцию
toCollection
,
которая преобразует коллекцию в указанную коллекцию