ちいさな引き出し

お宝からガラクタまで

Scalaのメソッドの定義

メソッドの定義

Scalaでメソッドを定義するには、defキーワードを使います。

def メソッド名(仮引数名: 仮引数の型): 戻値の型 = 関数処理
  • 戻値の型は省略可能です。型推論という機能がありコンパイラが型を自動で判定します。
  • 関数の最後にreturnは一般的に省略します。関数の最後の値がそのまま戻り値になります。
  • 仮引数はカンマで区切ることで複数指定できます。
  • 仮引数の型は省略できない。
  • 関数本体の{}は式が一つであれば省略可能
  • 引数がない場合は()を省略可能。
  • 戻値の型と関数本体の間の =を記載しないと戻値の型がUnit型となってしまう。Unit型はjavaで言うvoidに相当。戻り値無しとしたい場合は戻り値の型にUnitを指定します。基本=は省略しない。
  • 引数はvalで定義されるため、再代入はできません。

例:

def greet(arg: String): String = {
  "hello " + arg
}

↓次のようにも書ける

def greet(arg: String) = "hello" +arg
広告を非表示にする