可変長引数
http://inforno.net/articles/2008/02/03/some-scala-tips-for-beginners
を見たけどよくわからなかったので。
def sum(n: int*):int = n.reduceLeft[int]((a, b) => a + b) def sumPlus(p: int, n: int*) = p + sum(n : _*) def sumPlus2(p: int, n: Array[int]) = p + sum(n : _*) def sumPlus3(p: int, n: List[int]) = p + sum(n : _*) sumPlus(1, 2, 3, 4) // result: 10 sumPlus2(1, Array(2, 3, 4)) // 結果: 10 sumPlus3(1, List(2, 3, 4)) // 結果: 10
『: _* 』で、ArrayやListを可変長引数に展開してくれるらしい。