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)

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

相关推荐
程序猿追7 小时前
我搭了个网页工具:输入关键词,SERP API 自动吐出比价 Excel
后端
Lee川7 小时前
RAG 实战:从一篇掘金文章出发,拆解检索增强生成的全链路
前端·人工智能·后端
Lee川7 小时前
MCP 高德地图实战:当 AI 学会使用工具,一个协议如何重塑大模型的行动边界
前端·人工智能·后端
楼田莉子7 小时前
C++17新特性:__had_include/属性/求值顺序规则
开发语言·c++·后端
程序员cxuan7 小时前
Codex 把我家烂网给优化后,我 TM 直接原地起飞了。
人工智能·后端·程序员
IT_陈寒7 小时前
Redis批量删除踩了坑,原来DEL命令不是万能的
前端·人工智能·后端
香蕉鼠片8 小时前
Python进阶学习
开发语言·python
摇滚侠8 小时前
Java 零基础全套教程,File 类与 IO 流,笔记 177-178
java·开发语言·笔记
叫我少年8 小时前
C# 命名空间与 using 指令 — 文件范围、全局导入、别名
后端
ytttr8738 小时前
OPC UA 协议栈 C 语言实现
c语言·开发语言·mfc