【Scala】Scala ~ 基本編 / メソッド ~

■ はじめに

Scala が慣れない、、、
今回は、Scala の メソッド について扱う。

なお、Scala の 場合、メソッド と 関数 は異なる。

Scala ~ 基本編 / 関数 ~
https://dk521123.hatenablog.com/entry/2023/10/09/232838

目次

【1】構文
【2】戻り値
【3】使用上の注意
【4】implicit
【5】可変長引数

【1】構文

def メソッド名(引数名1: データ型, ...): 戻り値のデータ型 = 式 or ブロック

// 個人的に、「=」の部分を書くの忘れてしまう、、、

式の場合

def sampleMethod1(name: String): String = s"Hello, ${name}!!"

ブロックの例

def sampleMethod2(name: String): String = {
   // e.g. name = "Mike", return value is "Hello, Mike!!"
   s"Hello, ${name}!!"
}

【2】戻り値

* Java の void は、「Unit」
* return は基本書かないらしい(途中で関数抜けるとき位?)

【3】使用上の注意

* 引数がない場合、「()」を省略して関数を呼び出すことも可能
 => 正規表現のメソッドは、引数なしで定義されているので、()に違和感があった、、、

【4】implicit

* 以下の関連記事を参照のこと

Scala ~ implicit ~
https://dk521123.hatenablog.com/entry/2024/07/24/120726

【5】可変長引数

* 以下の関連記事を参照のこと

Scala ~ 可変長引数 ~
https://dk521123.hatenablog.com/entry/2024/07/30/155036

関連記事

Scala ~ 環境構築編 ~
https://dk521123.hatenablog.com/entry/2023/03/10/193805
Scala ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2023/03/12/184331
Scala ~ 基本編 / クラス ~
https://dk521123.hatenablog.com/entry/2023/03/14/000857
Scala ~ 基本編 / コレクション ~
https://dk521123.hatenablog.com/entry/2023/03/13/000345
Scala ~ 基本編 / 関数 ~
https://dk521123.hatenablog.com/entry/2023/10/09/232838
Scala ~ implicit ~
https://dk521123.hatenablog.com/entry/2024/07/24/120726
Scala ~ 可変長引数 ~
https://dk521123.hatenablog.com/entry/2024/07/30/155036
ScalaYAML
https://dk521123.hatenablog.com/entry/2023/03/16/012034