设置在 Scala |第一组
集合是仅包含唯一项的集合。集合的唯一性由集合持有的类型的 == 方法定义。如果您尝试在集合中添加重复项,则集合悄悄地丢弃您的请求。
句法:
// 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)
关于 Scala 中 Set 的一些要点
- 在 Scala 中,可变集和不可变集都可用。可变集合是那些对象的值是变化的集合,但在不可变集合中,对象的值本身是不变的。
- Scala 中的默认设置是不可变的。
- 在 Scala 中,不可变集定义在 Scala.collection.immutable._ 包下,可变集定义在 Scala.collection.mutable._ 包下。
- 我们还可以在 Scala.collection.immutable._ 包下定义一个可变集,如下例所示。
- 一个 Set 有多种方法来添加、删除 clear、size 等,以增强 set 的使用。
- 在 Scala 中,我们可以创建空集。
句法:// Immutable empty set val variable_name = Set() // Mutable empty set var variable_name = Set()
示例 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)
}
}
}
输出:
Set 1:
Set(Geeks, GFG, GeeksforGeeks, Geek123)
Set 2:
Scala
C#
Ruby
PHP
C
Java
示例 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))
}
}
输出:
Set 1:
Set(Geeks, GFG, GeeksforGeeks, Geek123)
Set 2:
10
100000
10000
1000
100
示例 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)
}
}
输出:
The empty set is:
Set()
排序集
在 Set 中, SortedSet用于按排序顺序从集合中获取值。 SortedSet 仅适用于不可变集。
例子:
// 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))
}
}
输出:
0
3
6
7
8
45
56
87