У меня есть список объектов, подобных этому:
val obj1 = Obj(date = LocalDate.parse("2018-12-12"), amount = BigDecimal(100))
val obj2 = Obj(date = LocalDate.parse("2018-12-12"), amount = BigDecimal(200))
val obj3 = Obj(date = LocalDate.parse("2019-10-10"), amount = BigDecimal(500))
val arrayOfObj = arrayOf(obj1, obj2, obj3)
Я хотел бы вернуть список объектов, которые выглядят примерно так:
date=2018-12-12, amount=300, objs=[Obj(date=2018-12-12, amount=100), Obj(date=2018-12-12, amount=200)]
date=2019-10-10, amount=500, objs=[Obj(date=2019-10-10, amount=500)]
В основном я хотел бы groupBy date, суммируйте суммы и сопоставьте с новым объектом, который включает в себя список оригинальных объектов
arrayOfObj.groupBy {it.date} дает мне хорошую карту, и я могу l oop записи и получить сумму, но мне интересно, если есть хитрый способ сделать это с фолдом или агрегацией. Я немного о Kotlin n00b.