¿Hay alguna forma de inicializar una lista x veces con el valor de y?
Así en lugar de:
mutableListOf(0, 0, 0, 0)algo como:
makeMutableList(4, 0)Sí, así:
MutableList(4) { 0 } Esto llama a la función de fábrica MutableList que toma un tamaño y una lambda, pasando a la lambda el índice y configurando el elemento apropiado para el resultado de la lambda. Así, para crear la lista [1, 2, 3, 4] puedes hacer esto:
MutableList(4) { it + 1 }Si no necesita una lista mutable , también hay una función de fábrica de listas.
Cuando se ejecuta en la JVM, las funciones List y MutableList crean una java.util.ArrayList , aunque no debe confiar en el tipo exacto.