Avatar ·

Como inicializar um array em Kotlin com valores específicos?

Olá! Comecei a estudar Kotlin depois de Java e me deparei com um problema na inicialização de arrays.

Em Java, eu costumava fazer assim: int[] numbers = {1, 2, 3, 4, 5}; ou String[] names = {"Alice", "Bob"};. Tudo simples e claro.

Mas em Kotlin, vejo várias maneiras diferentes e fiquei confuso. Tentei escrever:

val numbers = {1, 2, 3} // Erro de compilação

Depois li que preciso usar arrayOf():

val numbers = arrayOf(1, 2, 3)

Isso funciona, mas não entendo: é a maneira correta? E se eu quiser um array de null? Ou se precisar de um array de tipos primitivos (IntArray, BooleanArray)?

Também vi este código:

val numbers = IntArray(5) { it * 2 } // O que isso significa?

Ou este:

val arr = Array(3) { "" }

Estou completamente confuso. Por favor, me ajude:

  • Como inicializar corretamente