手続き型的なリスト処理
object Main {
def main(args : Array[String]): Unit = {
var ls = List[int](3, 1, 4)
ls = ls.sort((x, y) => x < y)
for (x <- ls)
println(x)
}
}
関数型的なリスト処理
List(3, 1, 4).sort((x, y) => x < y).foreach(println)
. の代わりにスペースでもいいのか〜。ついでに関数呼び出しにカッコつけなくていいのね
List(3, 1, 4) foreach println
object Main {
// 1秒ごとに func 関数を実行
def timerCallback(func: () => Unit): Unit = {
while (true) {
func()
Thread.sleep(1000)
}
}
// Hello を出力
def hello() = println("Hello")
def main(args : Array[String]): Unit = {
// 1秒ごとに Hello を出力
timerCallback(hello)
}
}
object Main {
// 1秒ごとに func 関数を実行
def timerCallback(func: () => Unit): Unit = {
while (true) {
func()
Thread.sleep(1000)
}
}
def main(args : Array[String]): Unit = {
// 1秒ごとに Hello を出力
timerCallback(() => println("Hello"))
}
}
以下の2行は同じ意味になる
// リストから 1 より大きい要素を抽出 List(3, 1, 4).filter(_ > 1).foreach(println) List(3, 1, 4).filter(x => x > 1).foreach(println)
シンタックス・ハイライトにはとりあえず java を使っている