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)

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

相关推荐
iOS开发上架哦7 分钟前
Charles 抓不到包怎么办?从 HTTPS 分析到 TCP 抓包的全流程排查指南
后端
wjs202414 分钟前
C++ 数据结构
开发语言
yangmf204015 分钟前
APM(三):监控 Python 服务链
大数据·运维·开发语言·python·elk·elasticsearch·搜索引擎
bcbnb25 分钟前
App Store 软件上架需要多久?从构建到审核通过的全流程时长解析与影响因素分析
后端
Q***f63529 分钟前
Java数据可视化应用
java·开发语言·信息可视化
SundayBear30 分钟前
嵌入式操作系统进阶C语言
c语言·开发语言·嵌入式
hygge99933 分钟前
synchronized vs CopyOnWrite 系列
java·开发语言·经验分享·面试
-森屿安年-33 分钟前
LeetCode 11. 盛最多水的容器
开发语言·c++·算法·leetcode
用户03048059126342 分钟前
前后端数据传输: 利用 Jackson 注解实现 Enum 与 int 的双向映射
java·后端
ouliten44 分钟前
C++笔记:std::stringbuf
开发语言·c++·笔记