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)

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

相关推荐
静若繁花_jingjing11 分钟前
DDD领域驱动设计实践_保险
java·开发语言
程序猿202314 分钟前
Python每日一练---第十二天:验证回文串
开发语言·python
wjs202417 分钟前
AJAX 实例详解
开发语言
我要升天!19 分钟前
QT -- 初识
开发语言·qt
楼田莉子22 分钟前
Linux学习:进程的控制
linux·运维·服务器·c语言·后端·学习
大菠萝学姐31 分钟前
基于springboot的旅游攻略网站设计与实现
前端·javascript·vue.js·spring boot·后端·spring·旅游
wjs202435 分钟前
Memcached flush_all 命令详解
开发语言
回家路上绕了弯1 小时前
服务器大量请求超时?从网络到代码的全链路排查指南
分布式·后端
zbhbbedp282793cl1 小时前
unique_ptr和shared_ptr有何区别?
java·开发语言·jvm
.NET修仙日记1 小时前
第四章:C# 面向对象编程详解:从类与对象到完整项目实践
开发语言·c#·.net·源码·教程·.net core