2015-10-19 21 views

cevap

8

Sana unfold kullanarak bunu yapabilirsiniz düşünüyorum:

import scalaz.stream._ 

def foo[A](it: Iterator[A]): Process[Nothing, A] = Process.unfold(it) { it => 
    if (it.hasNext) Some((it.next, it)) 
    else None 
} 

Örnek:

scala> foo(List(1,2,3,4,5).iterator).toList 
res0: List[Int] = List(1,2,3,4,5)