Как вы заставляете Kotlin Sequence оценивать все ожидающие операторы? Я знаю, что вы можете применить терминальную операцию, и я достиг этого, вызвав .size
в последовательности, но это похоже на хак и не демонстрирует намерения. Есть ли традиционный способ оценки последовательности, которая демонстрирует намерение.
Это мое намерение, я перечисляю всех дочерних элементов группы представления и применяю некоторые операции к дочерним элементам, которые соответствуют предикату, подобному этому
viewGroup.children.filter{ it is FrameLayout }.map { child ->
// Do something with child view
doSomeThingWithChildView()
}
viewGroup.children возвращает последовательность, но все применяемые к ней операторы не могут быть оценены, если в последовательности не вызывается терминальная операция. Как заставить doSomeThingWithChildView()
быть вызванным?