Ambientado en Scala | Serie 1

Un conjunto es una colección que solo contiene elementos únicos . La unicidad de un conjunto se define por el método == del tipo que contiene el conjunto. Si intenta agregar un elemento duplicado en el conjunto, descarte tranquilamente su solicitud.
Sintaxis:

// Immutable set
val variable_name: Set[type] = Set(item1, item2, item3)
or
val variable_name = Set(item1, item2, item3)

// Mutable Set
var variable_name: Set[type] = Set(item1, item2, item3)
or
var variable_name = Set(item1, item2, item3)

Algunos puntos importantes sobre Set en Scala

  • En Scala, están disponibles conjuntos mutables e inmutables . El conjunto mutable es aquel conjunto en el que el valor del objeto cambia pero, en el conjunto inmutable, el valor del objeto en sí mismo no cambia.
  • Los valores predeterminados en Scala son inmutables .
  • En Scala, el conjunto inmutable se define en el paquete Scala.collection.immutable._ y el conjunto mutable se define en el paquete Scala.collection.mutable._.
  • También podemos definir un conjunto mutable en el paquete Scala.collection.immutable._ como se muestra en el siguiente ejemplo.
  • Un conjunto tiene varios métodos para agregar, quitar claro, tamaño, etc. para mejorar el uso del conjunto.
  • En Scala, podemos crear conjuntos vacíos.
    Sintaxis:
    // Immutable empty set
    val variable_name = Set()
    
    // Mutable empty set
    var variable_name = Set()

Ejemplo 1:

// Scala program to illustrate the 
// use of immutable set
import scala.collection.immutable._
  
object Main 
{
    def main(args: Array[String]) 
    {
          
        // Creating and initializing immutable sets
        val myset1: Set[String] = Set("Geeks", "GFG", 
                            "GeeksforGeeks", "Geek123")
        val myset2 = Set("C", "C#", "Java", "Scala", 
                                          "PHP", "Ruby")
          
        // Display the value of myset1
        println("Set 1:")
        println(myset1)
          
        // Display the value of myset2 using for loop
        println("\nSet 2:")
        for(myset<-myset2)
        {
            println(myset)
        }
    }
}

Producción:

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

Set 2:
Scala
C#
Ruby
PHP
C
Java

Ejemplo 2:

// Scala program to illustrate the 
// use of mutable set
import scala.collection.immutable._
  
object Main 
{
    def main(args: Array[String])
    {
          
        // Creating and initializing mutable sets
        var myset1: Set[String] = Set("Geeks", "GFG", 
                            "GeeksforGeeks", "Geek123")
        var myset2 = Set(10, 100, 1000, 10000, 100000)
          
        // Display the value of myset1
        println("Set 1:")
        println(myset1)
          
        // Display the value of myset2 
        // using a foreach loop
        println("\nSet 2:")
        myset2.foreach((item:Int)=>println(item))
    }
}

Producción:

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

Set 2:
10
100000
10000
1000
100

Ejemplo 3:

// Scala program to illustrate the 
// use of empty set
import scala.collection.immutable._
  
object Main 
{
    def main(args: Array[String]) 
    {
          
        // Creating empty sets
        val myset = Set()
          
        // Display the value of myset
        println("The empty set is:")
        println(myset)
    }
}

Producción:

The empty set is:
Set()

Conjunto ordenado

En Set, SortedSet se usa para obtener valores del conjunto en orden. SortedSet solo funciona para conjuntos inmutables.
Ejemplo:

// Scala program to get sorted values 
// from the set
import scala.collection.immutable.SortedSet 
  
object Main
{
    def main(args: Array[String]) 
    {
          
        // Using SortedSet to get sorted values
        val myset: SortedSet[Int] = SortedSet(87, 0, 3, 45, 7, 56, 8,6)
        myset.foreach((items: Int)=> println(items))
    }
}

Producción:

0
3
6
7
8
45
56
87

Publicación traducida automáticamente

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