学んだことをなぐり書き



キーワード引数

def hoge(x: Int, y: Int, z: Int) = println("x = %d | y = %d | z = %d".format(x, y ,z))

// scala2.8 から関数呼び出しの時に引数名を指定することが出来る。これを「キーワード引数」と呼ぶ
// 別クラスとか別ファイルの離れている関数呼び出しに使用するとコードの可読性が上がったりする。
hoge(x = 6, y = 4, z = 5)

// キーワード引数を用いた場合、引数の順番は適当でいい。
// しかし特に理由がない限り実際の順番通りの方が可読せ(ry
hoge(z = 1, x = 3, y = 2)

// 途中からキーワード引数に切り替えることも可能
hoge(5, z = 1, y = 2)

// 関数リテラルに変換した場合、引数名は v1, v2 ... となってしまうので注意
val f = hoge _
f(v1 = 1, v2 = 2, v3 = 3)

val f2 = hoge(_: Int, 5, _: Int)
f2(v1 = 1, v2 = 3)
x = 6 | y = 4 | z = 5
x = 3 | y = 2 | z = 1
x = 5 | y = 2 | z = 1
x = 1 | y = 2 | z = 3
x = 1 | y = 5 | z = 3

メンバーのみ編集できます