以下Int型リストの総和を求めるというものすごく簡単な例
関数型っぽく書いたとき
def calcsum(list:List[Int]) : Int = {
if (list.isEmpty)
0
else
list.head + calcsum(list.tail)
}
Java(手続き型)っぽく書いたとき
def calcsum2(list:List[Int]) : Int = {
var sum = 0
for( value <- list) sum += value
sum
}
こういう風に関数型と手続き型の両方で書けるのがScalaのいいところ。 その気になれば全部Javaっぽく書くのも可能。
0 件のコメント:
コメントを投稿