DBILITY

kotlin reduce, fold 본문

android/kotlin

kotlin reduce, fold

DBILITY 2024. 3. 11. 10:57
반응형

empty colletion일때 reduce는 오류가 발생한다.

java.lang.UnsupportedOperationException: Empty collection can't be reduced.

가능성이 있을때는 fold를 사용해도 되나?^^

data class Todo(val id: Int, val content: String, val datetime: Long)
...

private val initDataList = mutableListOf<Todo>()

/*val maxId = fold(Todo(0, String(), 0L)) { acc, todo ->
    if (acc.id.compareTo(todo.id) == 1) acc else todo
}.id + 1*/

var maxId = 1
if (size>1) {
    maxId = reduce { acc, todo ->
        if (acc.id.compareTo(todo.id) == 1) acc else todo
    }.id + 1
}
반응형
Comments