저는 주로 https://programmers.co.kr/learn/challenges 에서 코딩테스트 연습하는데, 코틀린에서 기본으로 지원하는 메소드 체인 형태로 만들어지게 연습하고 있어요.
RxJava에서 지원하는 어지간한 것들은 다 들어와있더라고요.
예를 들어 짝수 배열을 만들고 싶다면
(0..10).filter { it % 2 == 0 }.toIntArray() // [0, 2, 4, 6, 8, 10]
(0..10 step 2).toList().toIntArray() // [0, 2, 4, 6, 8, 10]
이런 식이죠.
짝수만 추리고, 앞에 1을 붙이고 싶다면
(0..10).filter { it % 2 == 0 }.map { "1$it" }.map { it.toInt() }.toIntArray() // [10, 12, 14, 16, 18, 110]
로 하면 됩니다.
아직 RxJava를 안 쓰시거나, 코틀린 시작하는 분들은 이거 써보세요 ㅎㅎ
요즘 언어들은 비슷한 체이닝을 다 제공하는데, 언어 별로 조금씩 용법이 달라서 재밌기도 하고, 조심해야 할 것 같기도 합니다.