Kotlin oferece maneiras flexíveis de gerenciar coleções, mas entender a diferença entre listas mutáveis e imutáveis é crucial. Este artigo explora a adição de elementos a ambos os tipos usando a função add()
e o operador +=
.
Sumário
- Adicionando Elementos com a função
add()
- Adicionando Elementos com o operador
+=
- Trabalhando com Listas Imutáveis
Adicionando Elementos com a função add()
A função add()
fornece maneiras versáteis de adicionar elementos a um ArrayList
. Você pode adicionar ao final ou inserir em um índice específico.
Adicionando ao final:
val mutableList = ArrayList()
mutableList.add("Apple")
mutableList.add("Banana")
mutableList.add("Cherry")
println(mutableList) // Saída: [Apple, Banana, Cherry]
Inserindo em um índice específico:
mutableList.add(1, "Orange") // Adiciona "Orange" no índice 1
println(mutableList) // Saída: [Apple, Orange, Banana, Cherry]
Adicionando Elementos com o operador +=
O operador +=
oferece uma maneira concisa de adicionar elementos, particularmente útil para adicionar elementos únicos ou mesclar listas.
Adicionando um único elemento:
val mutableList2 = ArrayList()
mutableList2 += 1
mutableList2 += 2
mutableList2 += 3
println(mutableList2) // Saída: [1, 2, 3]
Adicionando múltiplos elementos de outra coleção:
val list1 = ArrayList(listOf(1,2,3))
val list2 = listOf(4,5,6)
list1 += list2
println(list1) // Saída: [1, 2, 3, 4, 5, 6]
Trabalhando com Listas Imutáveis
Tanto add()
quanto +=
são projetados para listas mutáveis. Tentar usá-los em uma lista imutável (criada usando listOf()
) resultará em um erro de compilação. Para adicionar a uma lista imutável, você deve criar uma nova lista contendo os elementos originais e os novos.
val immutableList = listOf("Apple", "Banana", "Cherry")
val newList = immutableList + "Orange" // Cria uma nova lista
println(newList) // Saída: [Apple, Banana, Cherry, Orange]
Em resumo:
add()
fornece controle granular, enquanto +=
oferece sintaxe concisa. Escolha o método que melhor se adapta às suas necessidades. Lembre-se sempre da distinção entre listas mutáveis e imutáveis para evitar erros.