scala集合的partition方法使用

在Scala中,partition 方法用于将集合(例如 List、Array ,Set等)中的元素根据给定的条件分成两个部分,并返回一个元组,其中包含两个新的集合,第一个包含满足条件的元素,另一个包含不满足条件的元素。这是 partition 方法的语法:

复制代码
def partition(p: (A) => Boolean): (Repr1, Repr2)
  • p 是一个函数,它接受一个元素,并返回一个布尔值,用于指示是否满足分区的条件
  • ( Repr1, Repr2 ) 是一个元组,第一个是满足条件的集合,第二个是不满足条件的集合

看下面的一个使用 partition 方法的例子:

复制代码
val numbers = List(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

// 分区:将偶数和奇数分开
val (even, odd) = numbers.partition(_ % 2 == 0)

println("Even numbers: " + even) // 输出:Even numbers: List(2, 4, 6, 8, 10)
println("Odd numbers: " + odd)   // 输出:Odd numbers: List(1, 3, 5, 7, 9)

可以看到非常方便快速的就将两个集合分开了,还是比较好用的

相关推荐
掘金者阿豪2 分钟前
你的公网 IP 是专线还是动态变化的?一文讲透动态 IP 与固定 IP 的那些事
前端·后端
超超不吵吵2 分钟前
Java AI转型实战(八):RAG完整链路实战
后端
名字还没想好☜4 分钟前
Python asyncio.Queue 实战:用生产者-消费者给爬虫/任务流限速又解耦
开发语言·爬虫·python·并发·asyncio
大厂码农老A23 分钟前
汤森路透的座上宾?Qwen3.5-397B-A17B到底有什么本事?
前端·人工智能·后端
程序猿乐锅24 分钟前
从 dsh 源码看「一切皆插件」与 Spring IoC
java·网络·数据库·人工智能·后端·spring
保持清醒的坐标系29 分钟前
腾讯开源 teamai-cli:让全队 AI 工具用同一套"员工手册"
后端·github
Liora_Yvonne1 小时前
从数据库到 Vue 页面:用 LY Fullstack 完成第一个真实全栈业务模块
前端·后端·nestjs
问君能有几多愁~1 小时前
Qt Json 序列化操作
开发语言·qt·json
黑马程序员毕设1 小时前
非遗文化展览系统设计与实现
人工智能·spring boot·后端·微信小程序·毕设
预知同行1 小时前
AI Native 应用缓存架构实战:语义缓存、Prompt 缓存与响应缓存的三层设计
后端·架构