Scalaのfor文のサンプルです。
for文の基本形
Scala if文のサンプル
def main(arts: Array[String]) : Unit = {
for(x <- 1 to 3; y <- 1 until 3) {
println("x:" + x + ", y:" + y)
}
// 【出力結果】
// x:1, y:1
// x:1, y:2
// x:2, y:1
// x:2, y:2
// x:3, y:1
// x:3, y:2
}
n to m は、mを含みます。
n until m は、mを含みません。
IF文でfor文中にフィルタリング条件を記述する
以下のように条件に合致するもののみを処理対象とすることもできます。
if文でフィルタリング条件を記述する
def main(arts: Array[String]) : Unit = {
// 3の倍数だけをフィルタリング
for(x <- 1 to 10 if x % 3 == 0) {
print(x)
}
// => 3 6 9
}
for文で値を返す
以下のようにyieldキーワードを使用することで、for文の結果を取得することができます。
yieldキーワードを使って、for文で値を返す
def main(arts: Array[String]) : Unit = {
val doubleList =
for(x <- List(1, 2, 3)) yield {
x * 2
}
println(doubleList) // => List(2, 4, 6)
}