15. Java風サンプル
//while式のサンプル
var i = 1
while (i <= 4) {
println("Iteration " + i)
i += 1
}
while 式は、Scalaでは避けた方がよい。 while 式
は、値を返すが、意味のないUnit 型の値である()
値を返すため。また、 while 式を使うと、通常var
を利用することになり、副作用を伴い、Scalaメリ
ットを失うことにつながる。
while 式を使う場合は、 for 式が使うことができな
いかを検討するのがよい。
16. Scalaサンプル
//for式のサンプル
for (i <- 1 to 4) println("Iteration " + i)
for 式では、 Range 型、配列など、あらゆるコレク
ションを処理できる。
i <- 1 to 4 という構文は、ジェネレーターと呼ば
れる。
反復処理を1回実行するたびに、 i という名前の新
しいval が要素の値によって初期化される。
i の型も、整数型とコンパイラが推論して、実行さ
れる。
18. match式
match 式は、Javaのswitch 文と同様、いくつかの選
択肢から1つを選ぶといった処理を記述できる。
val firstArg = if (args.length > 0) args(0) else ""
val friend =
firstArg match {
case "salt" => "pepper"
case "chips" => "salasa"
case "eggs" => "bacon"
case _ => "huh?"
}
println(friend)
_ は、ワイルドカード。あらゆるオブジェクトにマ
ッチする。