Risposte:
Puoi semplicemente scrivere:
val mutableList = mutableListOf<Kolory>()
Questo è il modo più idiomatico.
I modi alternativi sono
val mutableList : MutableList<Kolory> = arrayListOf()
o
val mutableList : MutableList<Kolory> = ArrayList()
Questo sta sfruttando il fatto che tipi java come ArrayList
stanno implementando implicitamente il tipo MutableList
tramite un trucco del compilatore.
kotlin.collections.List
è . Kotlin ha un meccanismo per mappare alcuni tipi di Java integrati. Fare riferimento a kotlinlang.org/docs/reference/java-interop.html#mapped-types e simili domande SO. La sezione dei commenti non è appropriata per discuterne in dettaglio. java.utils.List
Varie forme a seconda del tipo di Elenco, per Elenco array:
val myList = mutableListOf<Kolory>()
// or more specifically use the helper for a specific list type
val myList = arrayListOf<Kolory>()
Per LinkedList:
val myList = linkedListOf<Kolory>()
// same as
val myList: MutableList<Kolory> = linkedListOf()
Per altri tipi di elenchi, si supporrà mutevole se li costruisci direttamente:
val myList = ArrayList<Kolory>()
// or
val myList = LinkedList<Kolory>()
Questo vale per tutto ciò che implementa l' List
interfaccia (ovvero altre librerie di raccolte).
Non è necessario ripetere il tipo sul lato sinistro se l'elenco è già modificabile. O solo se si desidera trattarli come di sola lettura, ad esempio:
val myList: List<Kolory> = ArrayList()
ArrayList(24)
per esempio, se penso che 24 sia un buon inizio, probabilmente non avrà bisogno di altro.
mutableListOf
. Il corretto sarebbe:val myList = arrayListOf<Kolory>() // same as // val myList = mutableListOf<Kolory>()
Mi piace di seguito a:
var book: MutableList<Books> = mutableListOf()
/ ** Restituisce un nuovo [MutableList] con gli elementi indicati. * /
public fun <T> mutableListOf(vararg elements: T): MutableList<T>
= if (elements.size == 0) ArrayList() else ArrayList(ArrayAsCollection(elements, isVarargs = true))