Lista de Kotlin: listOf()

Una lista es una colección ordenada genérica de elementos. Kotlin tiene dos tipos de listas, listas inmutables (no se pueden modificar) y listas mutables (se pueden modificar). 
Las listas de solo lectura se crean con listOf() cuyos elementos no se pueden modificar y las listas mutables se crean con el método mutableListOf() donde alteramos o modificamos los elementos de la lista.
El programa Kotlin de la lista contiene enteros – 
 

Java

fun main(args: Array<String>) {
    val a = listOf('1', '2', '3')
    println(a.size)
    println(a.indexOf('2'))
    println(a[2])
}

Producción: 
 

3
1
3

El programa Kotlin de la lista contiene strings: 
 

Java

fun main(args: Array<String>) {
    //creating list of strings
    val a = listOf("Ram", "Shyam", "Raja", "Rani")
    println("The size of the list is: "+a.size)
    println("The index of the element Raja is: "+a.indexOf("Raja"))
    println("The element at index "+a[2])
    for(i in a.indices){
        println(a[i])
    }
}

Producción: 
 

The size of the list is: 4
The index of the element Raja is: 2
The element at index Raja
Ram
Shyam
Raja
Rani

Indexación de Elementos de Lista en Kotlin –

Cada elemento de una lista tiene un índice. El primer elemento tiene un índice de cero (0) y el último elemento tiene un índice 
len – 1, donde ‘len’ es la longitud de la lista. 
 

Java

fun main(args: Array<String>)
{
    val numbers = listOf(1, 5, 7, 32, 0, 21, 1, 6, 10)
 
    val num1 = numbers.get(0)
    println(num1)
 
    val num2 = numbers[7]
    println(num2)
 
    val index1 = numbers.indexOf(1)
    println("The first index of number is $index1")
 
    val index2 = numbers.lastIndexOf(1)
    println("The last index of number is $index2")
 
    val index3 = numbers.lastIndex
    println("The last index of the list is $index3")
}

Producción: 
 

1
6
The first index of number is 0
The last index of number is 6
The last index of the list is 8

Primeros y Últimos Elementos –

Podemos recuperar el primer y el último elemento de la lista sin utilizar el método get(). 
Considerando el ejemplo anterior, si incluimos el siguiente código después de la línea no. 17 
 

Java

fun main(args: Array<String>)
{
    val numbers = listOf(1, 5, 7, 32, 0, 21, 1, 6, 10)
    println(numbers.first())
    println(numbers.last())
}

Producción: 
 

1
10

Listar métodos de iteración –

Es un proceso de acceder a los elementos de la lista uno por uno. 
Hay varias formas de hacer esto en Kotlin.
 

Java

fun main(args: Array<String>)
{
    val names = listOf("Gopal", "Asad", "Shubham", "Aditya",
        "Devarsh", "Nikhil", "Gagan")
 
    // method 1
    for (name in names) {
        print("$name, ")
    }
    println()
     
    // method 2
    for (i in 0 until names.size) {
        print("${names[i]} ")
    }
    println()
    
    // method 3
    names.forEachIndexed({i, j -> println("names[$i] = $j")})
 
    // method 4
    val it: ListIterator<String> = names.listIterator()
    while (it.hasNext()) {
        val i = it.next()
        print("$i ")
    }
    println()
}

Producción: 
 

Gopal, Asad, Shubham, Aditya, Devarsh, Nikhil, Gagan, 
Gopal Asad Shubham Aditya Devarsh Nikhil Gagan 
names[0] = Gopal
names[1] = Asad
names[2] = Shubham
names[3] = Aditya
names[4] = Devarsh
names[5] = Nikhil
names[6] = Gagan
Gopal Asad Shubham Aditya Devarsh Nikhil Gagan 

Explicación: 
 

for (name in names) {

        print("$name, ")
    }

El bucle for recorre la lista. En cada ciclo, la variable ‘nombre’ apunta al siguiente elemento de la lista. 
 

for (i in 0 until names.size) {

        print("${names[i]} ")
    }

Este método utiliza el tamaño de la lista. La palabra clave hasta crea un rango de índices de lista.
 

names.forEachIndexed({i, j -> println("namess[$i] = $j")})

Con el método forEachIndexed(), recorremos la lista con el índice y el valor disponibles en cada iteración. 
 

val it: ListIterator = names.listIterator()

    while (it.hasNext()) {

        val i = it.next()
        print("$i ")
    }

Aquí usamos un ListIterator para iterar a través de la lista.
 

Ordenando los elementos en la lista –

El siguiente ejemplo muestra cómo ordenar una lista en orden ascendente o descendente. 
 

Java

fun main(args: Array<String>)
{
    val list = listOf(8, 4, 7, 1, 2, 3, 0, 5, 6 )
 
    val asc = list.sorted()
    println(asc)
 
    val desc = list.sortedDescending()
    println(desc)
}

Producción: 
 

[0, 1, 2, 3, 4, 5, 6, 7, 8]
[8, 7, 6, 5, 4, 3, 2, 1, 0]

Explicación: 
 

val asc = list.sorted()

El método sorted() ordena la lista en orden ascendente. 
 

val desc = list.sortedDescending()

El método sortedDescending() ordena la lista en orden descendente.
 

Contiene() y contiene todas las funciones() –

Este método verifica si un elemento existe en la lista o no. 
 

Java

fun main(args: Array<String>)
{
    val list = listOf(8, 4, 7, 1, 2, 3, 0, 5, 6 )
 
    val res = list.contains(0)
 
    if (res)
        println("The list contains 0")
    else
        println("The list does not contain 0")
 
    val result = list.containsAll(listOf(3, -1))
 
    if (result)
        println("The list contains 3 and -1")
    else
        println("The list does not contain 3 and -1")
}

Producción: 
 

The list contains 0
The list does not contain 3 and -1

Explicación:
 

val res = list.contains(0)

Comprueba si la lista contiene 0 o no y devuelve verdadero o falso (su verdadero) que se almacena en res. 
 

 val result = list.containsAll(listOf(3, -1))

Comprueba si la lista contiene 3 y -1 o no.
 

Publicación traducida automáticamente

Artículo escrito por dahalegopal27 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *