Назначение массива Kotlin 2d - PullRequest
0 голосов
/ 24 февраля 2019

допустим, у меня есть список, определенный в Kotlin:

val mylist = mutableListOf<List<Int>>(listOf(2,3,5), listOf(2,5,6))

Теперь я хочу присвоить определенное значение одному из этих подсписков.Например, теперь, когда у меня есть список

((2,3,5)(2,5,6))

, я бы хотел, чтобы мой список был

((2,3,5)(2,100,6))

Я привык делать это в Python чем-то вроде myList[1][1] = 100,Как мне добиться того же результата в Котлине?

1 Ответ

0 голосов
/ 24 февраля 2019

Kotlin имеет два набора интерфейсов сбора данных: обычные List, Set и т. Д., Которые доступны только для чтения, и те же, с префиксом Mutable, который можно изменять.

listOf даст вам экземпляр List, а mutableListOf даст вам экземпляр MutableList.Если вы используете последний для создания своих вложенных списков, вы можете использовать точный синтаксис, о котором вы спрашивали:

val mylist: MutableList<MutableList<Int>> = mutableListOf(mutableListOf(2,3,5), mutableListOf(2,5,6))

mylist[1][1] = 100

println(mylist) // [[2, 3, 5], [2, 100, 6]]

(для ясности я добавил явный тип для myList, он можетбыть пропущенным с левой стороны задания.)

...