Rasgo Scala Traversable | Conjunto-3

Prerrequisito:
Rasgo de Scala Traversable | Set-1
Rasgo Scala Traversable | Set-2
Se recomienda ver (Set-1, Set-2) antes de este Set.
Las operaciones son las siguientes:

  • Operaciones de recuperación de subcolección:
    las operaciones aquí son slice, drop, dropWhile, filter, filterNot, tail, take, takeWhile e init . Estas operaciones se utilizan para devolver alguna subcolección.
    Ejemplo :

    // Scala program of Sub-Collection
    // retrieval operation
      
    // Creating object 
    object SubCollection
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(17, 19, 21, 29, 31)
      
            // Applying Sub-Collection 
            // retrieval operation
            val y = x.init 
      
            // Displays all the elements of 
            // the List except the last one
            println(y)
        }
    }
    Producción:

    List(17, 19, 21, 29)
    

    Aquí, init recupera todos los elementos de la colección Traversable excepto el último elemento.
    Ejemplo :

    // Scala program of Sub-Collection
    // retrieval operation
      
    // Creating object 
    object SubCollection
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(17, 19, 21, 29, 31)
      
            // Applying Sub-Collection 
            // retrieval operation
            val y = x.tail
      
            // Displays all the elements of 
            // the List except the first one
            println(y)
        }
    }
    Producción:

    List(19, 21, 29, 31)
    

    Aquí, tail recupera todos los elementos de la colección Traversable excepto el primer elemento.
    Ejemplo :

    // Scala program of Sub-Collection
    // retrieval operation
      
    // Creating object 
    object SubCollection
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(27, 29, 31, 49, 51, 56)
      
            // Applying Sub-Collection 
            // retrieval operation
            val y = x.slice(2, 5)
      
            // Displays the elements 
            // from index 2 to 4 
            println(y)
        }
    }
    Producción:

    List(31, 49, 51)
    

    Aquí, slice devolverá los elementos del rango de índice dado, excluyendo el último índice.
    Ejemplo :

    // Scala program of Sub-Collection
    // retrieval operation
      
    // Creating object 
    object SubCollection
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(37, 49, 51, 69, 71, 86)
      
            // Applying Sub-Collection 
            // retrieval operation
            val y = x.take(2)
      
            // Displays the first two 
            // elements of the list
            println(y)
        }
    }
    Producción:

    List(37, 49)
    

    Aquí, esta operación devolverá números de elementos dados en el argumento de la operación de toma .
    Ejemplo :

    // Scala program of Sub-Collection
    // retrieval operation
      
    // Creating object 
    object SubCollection
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(33, 34, 36, 37, 39, 40, 44)
      
            // Applying Sub-Collection 
            // retrieval operation
            val y = x.drop(4)
      
            // Displays all the elements of 
            // the list except the first 
            // four elements
            println(y)
        }
    }
    Producción:

    List(39, 40, 44)
    

    Aquí, esta operación devolverá todos los elementos de la colección, excepto el primer número de elementos dado en el argumento de la operación de eliminación .
    Ejemplo:

    // Scala program of Sub-Collection
    // retrieval operation
      
    // Creating object 
    object SubCollection
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(2, 5, 9, 13, 17, 20)
      
            // Applying Sub-Collection 
            // retrieval operation
            val y = x.dropWhile(_ < 10)
      
            // Displays all the elements of 
            // the list which are greater 
            // than or equal to 10
            println(y)
        }
    }
    Producción:

    List(13, 17, 20)
    

    Aquí, dropWhile soltará los elementos hasta que se cumpla la condición dada y devuelva el resto de los elementos restantes.
    Ejemplo :

    // Scala program of Sub-Collection
    // retrieval operation
      
    // Creating object 
    object SubCollection
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(2, 5, 9, 10, 13, 17, 20)
      
            // Applying Sub-Collection 
            // retrieval operation
            val y = x.takeWhile(_ < 13)
              
            // Displays all the elements of 
            // the list which are less 
            // than 13
            println(y)
        }
    }
    Producción:

    List(2, 5, 9, 10)
    

    Aquí, takeWhile tomará los elementos hasta que se cumpla la condición dada y devolverá estos elementos.
    Ejemplo :

    // Scala program of Sub-Collection
    // retrieval operation
      
    // Creating object 
    object SubCollection
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(9, 65, 99, 10, 23, 17, 12)
      
            // Applying Sub-Collection 
            // retrieval operation
            val y = x.filter(_ < 23)
      
            // Displays all the elements of 
            // the list which are less 
            // than 23
            println(y)
        }
    }
    Producción:

    List(9, 10, 17, 12)
    

    Aquí, el filtro devolverá todos los elementos hasta que se cumpla la condición dada y descartará el resto.
    Ejemplo :

    // Scala program of Sub-Collection
    // retrieval operation
      
    // Creating object 
    object SubCollection
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(9, 65, 99, 10, 23, 17, 12)
      
            // Applying Sub-Collection 
            // retrieval operation
            val y = x.filterNot(_ < 23)
      
            // Displays all the elements of 
            // the list which are greater 
            // than or equal to 23
            println(y)
        }
    }
    Producción:

    List(65, 99, 23)
    

    Aquí, filterNot devolverá todos los elementos que no satisfagan la condición dada y eliminará el resto.

  • Operaciones de subdivisión:
    estas operaciones incluyen span, partición, splitAt, groupBy . Estas operaciones se utilizan para romper los elementos de la colección y devolver algunas subcolecciones.
    Ejemplo :

    // Scala program of Subdivision 
    // operations
      
    // Creating object 
    object Subdivision
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val q = List(7, 9, 11, 15, 17, 19, 22)
      
            // Applying Subdivision 
            // operations
            val r = q.span(_ < 15)
      
            // Displays all the elements in 
            // two parts
            println(r)
        }
    }
    Producción:

    (List(7, 9, 11), List(15, 17, 19, 22))
    

    Aquí, span dividirá la colección de elementos Traversable dada en dos partes donde, la primera parte se obtiene realizando la operación takeWhile y la segunda parte se obtiene realizando la operación dropWhile .
    Ejemplo :

    // Scala program of Subdivision 
    // operations
      
    // Creating object 
    object Subdivision
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val q = List(17, 29, 31, 36, 37, 39, 42)
      
            // Applying Subdivision 
            // operations
            val r = q.partition(_ < 35)
      
            // Displays all the elements in 
            // two parts
            println(r)
        }
    }
    Producción:

    (List(17, 29, 31), List(36, 37, 39, 42))
    

    Aquí, la partición dividirá la colección en dos partes donde, la primera parte devolverá los elementos hasta que se cumpla la condición dada y la segunda parte devolverá el resto de los elementos.
    Ejemplo :

    // Scala program of Subdivision 
    // operations
      
    // Creating object 
    object Subdivision
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val q = List(17, 29, 31, 36, 37, 39, 42)
      
            // Applying Subdivision 
            // operations
            val r = q.splitAt(4)
      
            // Displays all the elements in 
            // two parts
            println(r)
        }
    }
    Producción:

    (List(17, 29, 31, 36), List(37, 39, 42))
    

    Aquí, splitAt dividirá los elementos de la colección en dos partes en la posición dada donde, la primera parte se obtendrá realizando la operación de tomar y la segunda parte se obtendrá realizando la operación de soltar.
    Ejemplo :

    // Scala program of Subdivision 
    // operations
      
    // Creating object 
    object Subdivision
    {
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(21, 20, 33, 40, 27, 62)
      
            // Applying Subdivision 
            // operation 
            val y = x.groupBy 
            {
      
                // Partial function
                case z : Int if (z % 3 == 0) => z + 3
                case z : Int if (z % 2 == 0) => z + 2
            }
          
            // Displaying Map of lists
            println(y)
        }
    }
    Producción:

    Mapa(42 -> Lista(40), 24 -> Lista(21), 64 -> Lista(62), 22 -> Lista(20), 36 -> Lista(33), 30 -> Lista(27))

    Aquí, groupBy dividirá la colección Traversable sobre la base de la función parcial dada y devolverá un Mapa.

  • Métodos de prueba de elementos:
    estos métodos incluyen forall, exist y count . Estos métodos se utilizan para probar la colección dada de Traversable sobre la base de las condiciones establecidas.
    Ejemplo :

    // Scala program of Element 
    // test
      
    // Creating object 
    object Elementtest
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(21, 20, 33, 40, 27, 62)
      
            // Applying Element test 
            // method
            val y = x forall (_ < 63
      
            // Displays true if all the 
            // elements are lesser 
            // than 63
            println(y)
        }
    }
    Producción:

    true
    

    Aquí, forall devolverá verdadero si todos los elementos de la colección satisfacen la condición dada; de lo contrario, devolverá falso.
    Ejemplo :

    // Scala program of Element 
    // test
      
    // Creating object 
    object Elementtest
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(21, 20, 33, 40, 27, 62)
      
            // Applying Element test 
            // method
            val y = x exists (_ < 30
      
            // Displays true if some of 
            // the elements are lesser 
            // than 30
            println(y)
        }
    }
    Producción:

    true
    

    Aquí, existe devolverá verdadero si algunos de los elementos de la colección satisfacen la condición dada; de lo contrario, devolverá falso.
    Ejemplo :

    // Scala program of Element 
    // test
      
    // Creating object 
    object Elementtest
    {
      
        // Main method
        def main(args: Array[String]) 
        {
      
            // Creating List of numbers 
            val x = List(21, 20, 33, 40, 27, 62)
      
            // Applying Element test 
            // method
            val y = x count(_ < 40
      
            // Displays the number of 
            // elements satisfying the 
            // given condition
            println(y)
        }
    }
    Producción:

    4
    

    Aquí, count mostrará el número de elementos de la colección que satisfacen la condición dada.

Publicación traducida automáticamente

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