按属性分组案例类并限制组列表中元素个数的聚合问题。
创始人
2024-11-05 17:01:50
0次
- 首先定义一个案例类,例如:
case class Person(name: String, age: Int)
- 将案例类按照属性分组,例如按照年龄分组:
val people = List(Person("Alice", 25), Person("Bob", 30), Person("Charlie", 25))
val groupedPeople = people.groupBy(_.age)
- 对分组后的结果取出部分元素作为新的列表:
val limitedList = groupedPeople.flatMap({ case (k,v) => v.take(1) })
其中1表示每个组中要取出的元素个数。
完整代码示例:
case class Person(name: String, age: Int)
val people = List(Person("Alice", 25), Person("Bob", 30), Person("Charlie", 25))
val groupedPeople = people.groupBy(_.age)
val limitedList = groupedPeople.flatMap({ case (k,v) => v.take(1) })
相关内容
JAVA集合知识整理
Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
常用的DOS命令
常用的DOS命令 DOS(Disk Operating System,磁...