Story
- 환불 시스템은 금액별로 사용자를 처리하게끔 되어있다.
- 환불 시스템에 맞춰서 데이터를 가공해야한다.
- 가공을 완료 되었다면 환불 시스템을 통해 사용자들에게 환불 처리한다.
Process
사용자들의 환불 정보 이다.
val users = listOf<Map<String, Long>>(
mapOf("userId" to 1, "cashback" to 5000),
mapOf("userId" to 2, "cashback" to 5000),
mapOf("userId" to 3, "cashback" to 500),
mapOf("userId" to 4, "cashback" to 500),
mapOf("userId" to 5, "cashback" to 3000),
mapOf("userId" to 6, "cashback" to 2000),
)
가정하에 5000원을 환불받을 사용자는 2명, 3000원 1명, 2000원 1명, 500원 두명이라고 가정하자.
이때 group by 함수를 사용할 수 있으며 사용 방법이 아주 간단하다.
groupBy란?
리스트를 여러 그룹으로 이뤄진 맵으로 변경해주는 역할을 하는 함수이다.
위 같은 경우에는 Map<Long, List<Map<String, Long>>> 으로 변경 해준다.
Conclusion
그룹화된 데이터를 가지고 환불시스템을 통해 등록해준다면 간단히 그룹화된 결과를 가지고 데이터 핸들링이 가능할 것으로 보인다.
끄읏 :)
'Back-End > kotlin' 카테고리의 다른 글
apply, with, let, also, run 고차 함수 사용법 (0) | 2021.04.13 |
---|