Listas de Scala

Una lista es una colección que contiene datos inmutables. List representa una lista enlazada en Scala. La clase Scala List contiene una lista lineal secuenciada de elementos.
Los siguientes son el punto de diferencia entre las listas y la array en Scala:

  • Las listas son inmutables, mientras que las arrays son mutables en Scala.
  • Las listas representan una lista enlazada, mientras que las arrays son planas.

Sintaxis:

val variable_name: List[type] = List(item1, item2, item3)
or
val variable_name = List(item1, item2, item3)

Algunos puntos importantes sobre la lista en Scala:

  • En una lista de Scala, cada elemento debe ser del mismo tipo.
  • La implementación de listas utiliza estado mutable internamente durante la construcción.
  • En Scala, la lista se define en el paquete scala.collection.immutable.
  • Una lista tiene varios métodos para agregar, anteponer, máximo, mínimo, etc. para mejorar el uso de la lista.

Ejemplo:

// Scala program to print immutable lists
import scala.collection.immutable._
  
// Creating object
object GFG
{
    // Main method
    def main(args:Array[String])
    {  
        // Creating and initializing immutable lists
        val mylist1: List[String] = List("Geeks", "GFG",
                            "GeeksforGeeks", "Geek123")
        val mylist2 = List("C", "C#", "Java", "Scala",
                                        "PHP", "Ruby")
  
        // Display the value of mylist1
        println("List 1:")
        println(mylist1)
  
        // Display the value of mylist2 using for loop
        println("\nList 2:")
        for(mylist<-mylist2)
        {
            println(mylist)
        }
    }
}
Producción:

List 1:
List(Geeks, GFG, GeeksforGeeks, Geek123)

List 2:
C
C#
Java
Scala
PHP
Ruby

En el ejemplo anterior simplemente estamos imprimiendo dos listas.
Ejemplo:

// Scala program to illustrate the
// use of empty list
import scala.collection.immutable._
  
// Creating object
object GFG
{
    // Main method
    def main(args:Array[String])
    {
  
        // Creating an Empty List.
        val emptylist: List[Nothing] = List()
        println("The empty list is:")
        println(emptylist)
    }
}
Producción:

The empty list is:
List()

El ejemplo anterior muestra que la lista está vacía o no.
Ejemplo:

// Scala program to illustrate the 
// use of two dimensional list
import scala.collection.immutable._
  
// Creating object
object GFG
{
    // Main method
    def main(args:Array[String])
    {
        // Creating a two-dimensional List.
        val twodlist: List[List[Int]] =
        List(
            List(1, 0, 0),
            List(0, 1, 0),
            List(0, 0, 1)
            )
        println("The two dimensional list is:")
        println(twodlist)
    }
}
Producción:

The two dimensional list is:
List(List(1, 0, 0), List(0, 1, 0), List(0, 0, 1))
Operaciones básicas en listas

Las siguientes son las tres operaciones básicas que se pueden realizar en la lista en scala:

  1. head: El primer elemento de una lista devuelta por el método head.
    Sintaxis:
    list.head //returns head of the list
    

    Ejemplo:

    // Scala program of a list to 
    // perform head operation
    import scala.collection.immutable._
      
    // Creating object
    object GFG
    {
        // Main method
        def main(args:Array[String])
        {
            // Creating a List.
            val mylist = List("C", "C#", "Java", "Scala",
                                        "PHP", "Ruby")
            println("The head of the list is:")
            println(mylist.head)
        }
    }    
         
    Producción:

    The head of the list is:
    C
    
  2. cola: este método devuelve una lista que consta de todos los elementos excepto el primero.
    Sintaxis:
    list.tail //returns a list consisting of all elements except the first
    

    Ejemplo:

    // Scala program to perform
    // tail operation of a list
    import scala.collection.immutable._
      
    // Creating object
    object GFG
    {
        // Main method
        def main(args:Array[String])
        {
            // Creating a List.
            val mylist = List("C", "C#", "Java", "Scala",
                                        "PHP", "Ruby")
            println("The tail of the list is:")
            println(mylist.tail)
        }
    }
    Producción:

    The tail of the list is:
    List(C#, Java, Scala, PHP, Ruby)
    
  3. isEmpty: este método devuelve verdadero si la lista está vacía; de lo contrario, es falso.
    Sintaxis:
    list.isEmpty //returns true if the list is empty otherwise false.
    

    Ejemplo:

    // Scala program to perform
    // isEmpty operation of a list
    import scala.collection.immutable._
      
    // Creating object
    object GFG
    {
        // Main method
        def main(args:Array[String])
        {
          
            // Creating a List.
            val mylist = List("C", "C#", "Java", "Scala",
                                         "PHP", "Ruby")
            println("List is empty or not:")
            println(mylist.isEmpty)
        }
    }    
    Producción:

    List is empty or not:
    false
    
Cómo crear una lista uniforme en Scala

La lista uniforme se puede crear en Scala usando el método List.fill(). El método List.fill() crea una lista y la llena con cero o más copias de un elemento.
Sintaxis:

List.fill() //used to create uniform list in Scala 

Ejemplo:

// Scala program to creating a uniform list 
import scala.collection.immutable._
  
// Creating object
object GFG
{
    // Main method
    def main(args:Array[String])
    {
        // Repeats Scala three times.
        val programminglanguage = List.fill(3)("Scala") 
        println( "Programming Language : " + programminglanguage )
  
        // Repeats 2, 10 times.
        val number= List.fill(8)(4)         
        println("number : " + number)
    }
}    
Producción:

Programming Language : List(Scala, Scala, Scala)
number : List(4, 4, 4, 4, 4, 4, 4, 4)
Invertir el orden de la lista en Scala

El orden de la lista se puede invertir en Scala usando el método List.reverse. El método List.reverse se puede utilizar para invertir todos los elementos de la lista.
Sintaxis:

list.reverse //used to reverse list in Scala 

Ejemplo:

// Scala program of reversing a list order
import scala.collection.immutable._
  
// Creating object
object GFG
{
    // Main method
    def main(args:Array[String])
    {
        val mylist = List(1, 2, 3, 4, 5) 
        println("Original list:" + mylist)
          
        // reversing a list
        println("Reverse list:" + mylist.reverse)
    }
}
  
Producción:

Original list:List(1, 2, 3, 4, 5)
Reverse list:List(5, 4, 3, 2, 1)

Publicación traducida automáticamente

Artículo escrito por chaitanyashah707 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 *