diff options
Diffstat (limited to 'sources/examples')
-rw-r--r-- | sources/examples/iterators.scala | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/sources/examples/iterators.scala b/sources/examples/iterators.scala index 75ef1ed619..5f951156cf 100644 --- a/sources/examples/iterators.scala +++ b/sources/examples/iterators.scala @@ -2,17 +2,24 @@ package examples; object iterators { + def Array(elems: Double*): Array[Double] = { + val ar = new Array[Double](elems.length); + for (val i <- Iterator.range(0, elems.length)) + ar(i) = elems(i); + ar + } + def printArray(xs: Array[Double]) = Iterator.fromArray(xs) foreach { x => Console.println(x) }; def findGreater(xs: Array[Double], limit: Double) = Iterator.fromArray(xs) .zip(Iterator.from(0)) - .filter{case Pair(x, i) => x > limit} + .filter{case Pair(x, i) => x > limit } .map{case Pair(x, i) => i} def main(args: Array[String]) = { - val ar = Array[Double](6, 2, 8, 5, 1); + val ar = Array/*[Double]*/(6, 2, 8, 5, 1); printArray(ar); Console.println("Elements greater than 3.0:"); findGreater(ar, 3.0) foreach { x => Console.println(ar(x)) } |