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)

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

相关推荐
武子康3 小时前
调查研究-201 Rust 里的 dev build 和 release build:为什么同一份代码性能差这么多?
后端·架构·rust
石小石Orz3 小时前
AI具身交互:实现一个会说话的3D虚拟伴侣
前端·人工智能·后端
Ai拆代码的曹操3 小时前
容器 CPU Throttling 有多坑?K8s CFS 限制让 P99 慢了 16 倍
后端
夕阳与风馨3 小时前
大文件(20GB+)SFTP 下载模块设计与实现
后端·架构
Dilee3 小时前
Spring AI 2.0.0 接 Skill 最小 Demo:SkillsTool 加载 SKILL.md 一次跑通
后端
zoulee243 小时前
doris-python:让 SQLAlchemy 玩转 Apache Doris 多驱动生态
后端
RainCity3 小时前
Java Swing 自定义组件库分享(十二)
java·笔记·后端
Csvn4 小时前
Linux 系统性能监控与瓶颈排查
后端
铁皮饭盒4 小时前
Rust版Bun1.4之前, 盘点Bun1.3新特性
前端·javascript·后端