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