Comment ajouter un article à un ArrayList
dans Kotlin?
Réponses:
Pour les personnes qui migrent depuis java
, In Kotlin
List
est par défaut une version immuable et modifiable de Lists est appelée MutableList
.
Par conséquent, si vous avez quelque chose comme:
val list: List<String> = ArrayList()
Dans ce cas, vous n'obtiendrez pas de add()
méthode car la liste est immuable. Par conséquent, vous devrez déclarer un MutableList
comme indiqué ci-dessous:
val list: MutableList<String> = ArrayList()
Vous verrez maintenant une add()
méthode et vous pouvez ajouter des éléments à n'importe quelle liste.
val list: MutableList<String> = ArrayList()
et val list = mutableListOf<String>()
?
Si vous avez une collection MUTABLE :
val list = mutableListOf(1, 2, 3)
list += 4
Si vous avez une collection IMMUTABLE :
var list = listOf(1, 2, 3)
list += 4
notez que j'utilise val
pour la liste mutable pour souligner que l'objet est toujours le même, mais que son contenu change.
Dans le cas de la liste immuable, vous devez la créer var
. Un nouvel objet est créé par l' +=
opérateur avec la valeur supplémentaire.
+=
dans une liste non mutable, exiger de copier tous les éléments de la liste dans une nouvelle liste mutable puis la réaffecter à votre liste actuelle. Je ne savais pas qu'il convenait de déclarer votre liste comme var
. de toute façon, déclarer une liste var n'est pas une bonne idée pour moi.
var
. Si une liste immuable est déclarée comme val
, la liste ne pourra jamais changer. Il serait simplement possible de le réaffecter à une autre variable.