📜  在 Scala 中调用 Set 的方法

📅  最后修改于: 2022-05-13 01:54:33.256000             🧑  作者: Mango

在 Scala 中调用 Set 的方法

集合是仅包含唯一项的集合。在 Scala 中,可变集和不可变集都可用。可变集合是对象的值发生变化的集合,但在不可变集合中,对象的值本身不会改变。不可变集在 Scala.collection.immutable._ 包下定义,可变集在 Scala.collection.mutable._ 包下定义。在这里,我们将讨论 Scala.collection.immutable._ 包的一些重要方法。

1. def +(elem: A): Set[A] -此方法用于将元素添加到集合中,然后将其返回。
例子 :

// Scala program of +() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(8, 9, 1, 4, 2, 7) 
          
        // Applying +() method 
        val result = s.+(6) 
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(1, 6, 9, 2, 7, 8, 4)

2. def -(elem: A): Set[A] -此方法用于从集合中移除元素,然后将其返回。
例子 :

// Scala program of -() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(8, 9, 1, 4, 2, 7) 
          
        // Applying -() method 
        val result = s.-(1) 
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(9, 2, 7, 8, 4)

3. def contains(elem: A): Boolean -如果集合包含指定元素,此方法返回 true。否则,它将返回 false。
例子 :

// Scala program of contains() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(8, 9, 1, 4, 2, 7) 
          
        // Applying contains() method 
        val result = s.contains(1) 
              
        // Display output 
        print(result)     
    } 
} 

输出:

true

4. def &(that: Set[A]): Set[A] -此方法用于返回两个集合的交集。
例子 :

// Scala program of &() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s1 = Set(8, 9, 1, 4, 2, 7)
        val s2 = Set(3, 4, 6, 8) 
          
        // Applying &() method 
        val result = s1.&(s2)
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(8, 4)

5. def &~(that: Set[A]): Set[A] –这个符号表示集合差异。
例子 :

// Scala program of &~() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s1 = Set(8, 9, 1, 4, 2, 7)
        val s2 = Set(3, 4, 6, 8) 
          
        // Applying &~() method 
        val result = s1.&~(s2)
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(1, 9, 2, 7)

6. def +(elem1: A, elem2: A, elems: A*): Set[A] -此方法用于将多个元素添加到 Scala 集合中,然后返回它。
例子 :

// Scala program of +() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(8, 9, 1, 4, 2, 7)
          
        // Applying +() method 
        val result = s.+(3, 4, 6) 
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(1, 6, 9, 2, 7, 3, 8, 4)

7. def ++(elems: A): Set[A] -此方法用于将一个集合与另一个集合连接。
例子 :

// Scala program of ++() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s1 = Set(8, 9, 1, 4, 2, 7)
        val s2 = Set(3, 4, 6) 
          
        // Applying ++() method 
        val result = s1 ++ s2 
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(1, 6, 9, 2, 7, 3, 8, 4)

8. def -(elem1: A, elem2: A, elems: A*): Set[A] –此方法用于从集合中删除提到的每个元素。
例子 :

// Scala program of -() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(8, 9, 1, 4, 2, 7)
          
        // Applying -() method 
        val result = s.-(8, 1, 3) 
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(9, 2, 7, 4)

9. def addString(b: StringBuilder): StringBuilder –该方法用于将集合的所有元素添加到String Builder。
例子 :

// Scala program of addString() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(8, 9, 1, 4, 2, 7)
          
        // Applying addString() method 
        val result = s.addString(new StringBuilder()) 
              
        // Display output 
        print(result)     
    } 
} 

输出:

192784

10. def addString(b: StringBuilder, sep: String): StringBuilder –该方法用于上述功能的分隔符。
例子 :

// Scala program of addString() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(8, 9, 1, 4, 2, 7)
          
        // Applying addString() method 
        val result = s.addString(new StringBuilder(), "*") 
              
        // Display output 
        print(result)     
    } 
} 

输出:

1*9*2*7*8*4

11. def apply(elem: A) -这个方法用于检查元素是否是集合的一部分。它返回布尔值 True 或 False。
例子 :

// Scala program of apply() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(8, 9, 1, 4, 2, 7)
          
        // Applying apply() method 
        val result = s.apply(2)
              
        // Display output 
        print(result)     
    } 
} 

输出:

true

12. def drop(n: Int): Set[A]] -此方法用于返回除第一个 n 之外的所有元素。
例子 :

// Scala program of drop() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(2, 3, 5, 7, 8)
          
        // Applying drop() method 
        val result = s.drop(2)
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(7, 3, 8)

13. def dropRight(n: Int): Set[A] -此方法用于返回除与上述方法() 正好相反的最后一个 n 之外的所有元素。
例子 :

// Scala program of dropRight() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(1, 2, 3, 5, 7, 9)
          
        // Applying dropRight() method 
        val result = s.dropRight(2)
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(5, 1, 9, 2)

14. def equals(that: Any): Boolean -此方法用于将集合与另一个序列进行比较。
例子 :

// Scala program of equals() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(2, 3, 5, 7, 8)
          
        // Applying equals() method 
        val result = s.equals(Set(2, 3, 5, 7, 8))
              
        // Display output 
        print(result)     
    } 
} 

输出:

true

15. def head: A -此方法用于返回集合中的第一个元素。
例子 :

// Scala program of head() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(1, 2, 3, 5, 7, 9)
          
        // Applying head() method 
        val result = s.head
              
        // Display output 
        print(result)     
    } 
} 

输出:

5

16. def init: Set[A] -此方法用于返回集合中的所有元素,除了最后一个。
例子 :

// Scala program of init() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(1, 2, 3, 5, 7, 9)
          
        // Applying init() method 
        val result = s.init
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(5, 1, 9, 2, 7)

17. def intersect(that: Set[A]): Set[A] –该方法用于返回两个集合的交集,即返回两个集合中的公共元素。
例子 :

// Scala program of intersect() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s1 = Set(1, 2, 3, 5, 7, 9)
        val s2 = Set(1, 2, 3, 4, 9, 9)
          
        // Applying intersect() method 
        val result = s1.intersect(s2) 
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(1, 9, 2, 3)

18. def isEmpty: Boolean –如果给定集合为空,此方法返回 true。否则,它将返回 False。
例子 :

// Scala program of isEmpty() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(2, 3, 5, 7, 8)
          
        // Applying isEmpty() method 
        val result = s.isEmpty 
              
        // Display output 
        print(result)     
    } 
} 

输出:

false

19. def iterator: Iterator[A] -这个方法有助于在集合上创建一个新的迭代器。
例子 :

// Scala program of iterator() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(2, 3, 5, 7, 8)
          
        // Applying iterator() method 
        val result = s.iterator
              
        // Display output 
        print(result)     
    } 
} 

输出:

non-empty iterator

20. def last: A -此方法有助于返回集合中的最后一个元素。
例子 :

// Scala program of last() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(1, 2, 3, 5, 7, 9)
          
        // Applying last() method 
        val result = s.last
              
        // Display output 
        print(result)     
    } 
} 

输出:

3

21. def max: A -此方法用于返回集合中的最大值。
例子 :

// Scala program of max() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(2, 3, 5, 7, 8)
          
        // Applying max() method 
        val result = s.max 
              
        // Display output 
        print(result)     
    } 
} 

输出:

8

22. def min: A -此方法用于返回集合中的最低元素。
例子 :

// Scala program of min() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(1, 2, 3, 5, 7, 9)
          
        // Applying min() method 
        val result = s.min 
              
        // Display output 
        print(result)     
    } 
} 

输出:

1

23. def mkString: String——这个方法有助于将集合中的所有元素表示为一个字符串。
例子 :

// Scala program of mkString() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(2, 3, 5, 7, 8)
          
        // Applying mkString() method 
        val result = s.mkString
              
        // Display output 
        print(result)     
    } 
} 

输出:

52738

24. def product: A –该方法用于返回集合中所有元素的乘积。
例子 :

// Scala program of product() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(1, 2, 3, 5, 7, 9)
          
        // Applying product() method 
        val result = s.product
              
        // Display output 
        print(result)     
    } 
} 

输出:

1890

25. def size: Int——这个方法用来返回集合的大小。
例子 :

// Scala program of size() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(2, 3, 5, 7, 8)
          
        // Applying size() method 
        val result = s.size 
              
        // Display output 
        print(result)     
    } 
} 

输出:

5

26. def sum: A -此方法用于返回集合中所有元素的总和。
例子 :

// Scala program of sum() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(1, 2, 3, 5, 7, 9)
          
        // Applying sum() method 
        val result = s.sum
              
        // Display output 
        print(result)     
    } 
} 

输出:

27

27. def tail: Set[A] -此方法用于返回集合中除第一个之外的所有元素。
例子 :

// Scala program of tail() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(2, 3, 5, 7, 8)
          
        // Applying tail() method 
        val result = s.tail
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(2, 7, 3, 8)

28. def take(n: Int): Set[A] -此方法用于返回集合中的前 n 个元素。
例子 :

// Scala program of take() 
// method 
  
// Creating object 
object GfG 
{ 
  
    // Main method 
    def main(args:Array[String]) 
    { 
          
        // Creating a set 
        val s = Set(1, 2, 3, 5, 7, 9)
          
        // Applying take() method 
        val result = s.take(3)
              
        // Display output 
        print(result)     
    } 
} 

输出:

Set(5, 1, 9)

这里还有一些在集合上调用的方法。

MethodDescription
def &(that: Set[A]): Set[A]This method helps in returning an intersection of two sets.
def count(p: (A) => Boolean): IntThis method is used to return the count of elements that satisfy the predicate.
def diff(that: Set[A]): Set[A]This method is used to return the set difference(elements existing in one set, but not in another).
def dropWhile(p: (A) => Boolean): Set[A]This method is used to drop elements until the first element that doesn’t satisfy the predicate.
def exists(p: (A) => Boolean): BooleanThis method is used to return true if predicate holds true else returns false.
def filter(p: (A) => Boolean): Set[A]This method is used to filter elements.
def find(p: (A) => Boolean): Option[A]This method is used to return the first element that satisfies the predicate.
def forall(p: (A) => Boolean): BooleanThis method is used to return true if all elements of the set satisfy the predicate. Otherwise, false.
def map[B](f: (A) => B): immutable.Set[B]This method is used to applies the function to all elements of the set and returns it.
def splitAt(n: Int): (Set[A], Set[A])This method is used to split the set at the given index and returns the two resulting subsets.
def subsetOf(that: Set[A]): BooleanThis method is used to return true if the set passed as argument is a subset of this set else return false.
def takeRight(n: Int):Set[A]This method is used to return the last n elements.
def toArray: Array[A]This method is used to return an Array holding elements from the set.
def toList: List[A]This method is used to return a List from elements of the set.
def toSeq: Seq[A]This method is used to return a sequence from the set.
def toString(): StringThis method represents the elements of the set as a String.