23_Scala集合Set

文章目录

Set

--无序,数据不可重复集合

--Set是特质,不能直接构建,默认是不可变集合

1.构建方式

复制代码
//    1.构建方式
val set = Set.apply(2,2,2,2,3,4,5)
println(set)    //Set(2, 3, 4, 5)

2.可变Set集合

--需要根据包名进行区分

复制代码
    //2.创建可变set集合
    import scala.collection.mutable
    val set_mutable = mutable.Set(2,3,4,5,6)

3.可变集合的增删改查

--没有insert,append操作

复制代码
//    3.可变集合的增删改查
    set_mutable.add(999)
    println(set_mutable)    //Set(999, 5, 2, 6, 3, 4)   //无序

//    remove和Java一致,删除值为y的元素
    set_mutable.remove(999)
    set_mutable.remove(9999999)
    println(set_mutable)    //Set(5, 2, 6, 3, 4)

//    修改没有位置概念    update修改仅有状态的修改
    set_mutable.update(5,false)     //将5不包含
    set_mutable.update(1010,false)     //将1010不包含
    println(set_mutable)    //Set(2, 6, 3, 4)

//    update等价
    set_mutable(5) = true   //使5包含
    println(set_mutable.contains(999))    //false
相关推荐
一晌小贪欢34 分钟前
用 PyQt5 做一个「批量目录重命名」工具,并打包成带图标的 EXE
开发语言·驱动开发·python·python基础·python小白
阿蒙Amon37 分钟前
C#每日面试题-简述类成员
开发语言·c#
阿蒙Amon43 分钟前
C#每日面试题-ValueTuple和Tuple的区别
开发语言·c#
百***787544 分钟前
一步API+GPT-5.2生产级落地指南:架构设计+高可用+成本控制
开发语言·gpt·架构
Vallelonga44 分钟前
Rust 中 extern “C“ 关键字
c语言·开发语言·rust
头发还没掉光光1 小时前
Linux网络之TCP协议
linux·运维·开发语言·网络·网络协议·tcp/ip
讳疾忌医丶1 小时前
C++中虚函数调用慢5倍?深入理解vtable和性能开销
开发语言·c++
宵时待雨1 小时前
数据结构(初阶)笔记归纳5:单链表的应用
c语言·开发语言·数据结构·笔记·算法
橘橙黄又青1 小时前
Spring篇
java·后端·spring
JaredYe1 小时前
node-plantuml-2:革命性的纯Node.js PlantUML渲染器,告别Java依赖!
java·开发语言·node.js·uml·plantuml·jre