Scala 中的Set

Set :集合。表示没有重复元素的集合, 特点: 唯一,无序。

  1. Set 有可变 (mutable) 和不可变 (immutable) 两种类型。不可变 Set 创建后元素不能修改; 可变 Set 可对元素进行添加、删除等操作,这两种类型能满足不同场景需求。
Scala 复制代码
//Set
import scala.collection.mutable
// 特点:元素要唯一
object Test11 {
  def main(args: Array[String]): Unit = {
    //1. 定义Set
//    val set1=Set[元素类型](元素1,元素2,.....)
    // 元素的类型可以省略
//    val set1=Set[String]("小花","小明","小明")
//    val set1=Set("小花","小明","小明")
//    println(set1)

    //不可变Set,默认使用的Set就是不可变的!
//    val course=Set("语文","数学")
//    val course1=course + "英语"
//    println(course,course1)

    //可变Set,需要额外去引入包
    val course=mutable.Set("语文","数学")
    println(course)
   }
}
  1. 对于可变Set,我们可以使用 += 操作符来添加元素
Scala 复制代码
    //2.添加
    course+="英语"
    println(course)
  1. 对于可变Set,我们可以使用 -= 操作符来删除元素
Scala 复制代码
    //3.删除
    course-="语文"
  1. 添加一个Set
Scala 复制代码
    //4.添加一个Set
    course += mutable.Set("体育","音乐")
    println(course)
  1. 查询元素是否存在
Scala 复制代码
    //5.查询 元素是否存在。contains
    val rs=course.contains("体育1")
    //rs 是 true,false。是Boolean格式。
    
    println(s"体育是否存在:${rs}")
复制代码
6. 集合操作
Scala 复制代码
    val xiaohua =mutable.Set("语文","数学","英语")
    val xiaoming =mutable.Set("语文","体育","音乐")
//    问题1: 他们一共选了哪些课?
//    并集
    val rs2=xiaohua.union(xiaoming)
    println(s"哪些课是他们都选了的? ${rs2}")
//    问题2:哪些课是小花选了,小明没有选?
//    差集 diff
    val rs3=xiaohua.diff(xiaoming)
    println(s"哪些课是他们都选了的? ${rs3}")
//    问题3:哪些课是他们都选了的?
//    交集
    val rs1=xiaohua.intersect(xiaoming)
    println(s"哪些课是他们都选了的? ${rs1}")
相关推荐
Hello--_--World4 分钟前
ES13:类私有属性和方法、顶层 await、at() 方法、Object.hasOwnProperty()、类静态块 相关知识点
开发语言·javascript·es13
Hugh-Yu-13012312 分钟前
二元一次方程组求解器c++代码
开发语言·c++·算法
weixin_5206498718 分钟前
C#进阶-特性全知识点总结
开发语言·c#
文祐19 分钟前
C++类之虚函数表及其内存布局
开发语言·c++
亦暖筑序32 分钟前
Spring AI Alibaba 报错合集:我踩过的那些坑
java·后端
编程大师哥36 分钟前
C++类和对象
开发语言·c++·算法
M1582276905537 分钟前
工业 CAN 总线无线互联利器|4 路 CAN 转 4G/WiFi 网关 产品介绍
开发语言·php
石榴树下的七彩鱼41 分钟前
OCR 识别不准确怎么办?模糊 / 倾斜 / 反光图片优化实战(附完整解决方案 + 代码示例)
图像处理·人工智能·后端·ocr·api·文字识别·图片识别
burning_maple1 小时前
AI 工程实战指南:从零开始构建 AI 应用
开发语言·人工智能
你的牧游哥1 小时前
Java 核心概念详解
java·开发语言