scala
[scala] Iterator의 continually함수
'김용환'
2017. 4. 24. 19:16
Iterator.continaully 함수 예시이다.
계속 데이터를 반복하거나 입력을 받으려 할 때 유용할 수 있다.
scala> Iterator.continually(scala.io.StdIn.readLine).takeWhile(x => x.nonEmpty).foreach(line => println(line))
111
222
(엔터 입력시 종료)
scala>
Stream을 이용해 반복된 수를 출력한다.
scala> val l = List(1, 2, 3)
l: List[Int] = List(1, 2, 3)
scala> Stream.continually(l.toStream).flatten.take(100).toList
res38: List[Int] = List(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1)