Avatar ·

Cómo inicializar un MutableList vacío en Kotlin?

¡Hola a todos! Acabo de empezar a aprender Kotlin después de Java y me encontré con un problema simple pero confuso.

Necesito crear una lista mutable vacía (MutableList) para luego agregarle elementos. En Java escribiría algo como ArrayList list = new ArrayList<>();. Pero en Kotlin veo muchas formas diferentes y no entiendo cuál es la correcta.

Esto es lo que he probado:

// Opción 1
var list1 = mutableListOf()

// Opción 2
var list2: MutableList<String> = mutableListOf()

// Opción 3
var list3 = emptyList<String>()

// Opción 4
var list4 = ArrayList<String>()

El problema es que:

  • emptyList() devuelve una lista inmutable, y no puedo agregarle elementos.
  • mutableListOf() sin especificar el tipo funciona, pero luego no puedo agregar strings — da un error.
  • La opción con ArrayList funciona, pero no parece kotliniano.