Stream 객체를 써서 List의 요소를 반복하고 싶다면, Stream.continually(리스트).take() 메소드를 사용한다.
val list : List[String] = List("aaa", "bbb", "ccc")
println(Stream.continually(list).take(10).flatten.toList)
결과
List(aaa, bbb, ccc, aaa, bbb, ccc, aaa, bbb, ccc, aaa, bbb, ccc, aaa, bbb, ccc, aaa, bbb, ccc, aaa, bbb, ccc, aaa, bbb, ccc, aaa, bbb, ccc, aaa, bbb, ccc)
주의할 점은 다음 코드는 Stream(aaa, ?) 타입을 리턴하게 되니. 값을 확인할 수 없다.
println(Stream.continually(list).take(10).flatten)
scala> Stream.continually(list.toStream).take(10).flatten
res5: scala.collection.immutable.Stream[String] = Stream(aaa, ?)
'scala' 카테고리의 다른 글
[scala] tuple, _1, match 예시 (0) | 2016.09.07 |
---|---|
[scala] foldLeft와 foldRight 사용법 (디버그 하는 방법) (0) | 2016.09.07 |
[scala] package object 예제 (0) | 2016.09.07 |
[scala] for .. yield 예시 (0) | 2016.04.05 |
[scala 2.11.8] 간단한 변수 스코프 테스트시 유의사항 (0) | 2016.04.04 |