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)

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

相关推荐
刘沅4 分钟前
Redis的哨兵机制
后端·面试
AmazingEgg6 分钟前
从 LIKE 到 Elasticsearch:博客搜索引擎可插拔改造全记录
后端
未秃头的程序猿7 分钟前
MCP协议火了,但到底怎么用?我花了一个周末用Java接入了5个MCP Server
后端·ai编程·mcp
Cosolar8 分钟前
Claude Opus 5 系统提示词被完整泄露,共 135027 字符、约 3.4 万 token
人工智能·后端·架构
Alan_759 分钟前
RESTful API 落地的三个核心:资源建模、语义约束与工程化
后端
不一样的少年_12 分钟前
原来 AI Agent 的核心循环这么简单:手搓一个 Agent Loop
前端·后端·agent
Conan在掘金13 分钟前
鸿蒙报错速查:struct 里嵌 class 声明就炸,Unexpected token 编译报错,根因 + 真解法
后端
Conan在掘金14 分钟前
鸿蒙报错速查:arkts-no-destruct-decls 禁用解构声明,const { x, y } = obj 就炸,根因 + 真解法
后端
她说彩礼65万33 分钟前
ASP.NET Core 环境配置
后端·asp.net
SimonKing35 分钟前
OpenCode 桌面版这 10 天偷偷迭代了 5 个版本,你还在用旧版吗?
java·后端·程序员