【初心者向け】JavaとScalaを同時にマスターしよう!Vol.3

こんにちは!ぐちです。

はい!本企画連チャンでいきます!Hello Worldときて、変数ときたら、これしかないでしょう!そうです「関数」です。

それではVol.3いってみましょう!!

Vol.2はこちらからどうぞ。

関数定義

前回の変数と同様にプログラミングには絶対に欠かすことのできない関数(メソッド)。これを比較してみましょう!読者の皆様もそろそろ予想して頂いているかと思いますが、そうです!JavaとScalaで比較していきます。

二つの数値を受け取り、大きいほうの数字を返却するだけの関数max()をそれぞれ定義してみたいと思います。

Java

main()から直接呼び出したいので、max()static宣言していますが、公開範囲、返却値、メソッド名、引数のデータ型、引数名を宣言しメソッドを定義します。

public class Main {
    private static int max(int x, int y) {
        if(x > y)
            return x;
        else
            return y;
    }

    public static void main(String[] args) {
        int ret = max(10, 15);
        System.out.println("result: " + ret);
    }
}

結果は下記のようになります。

$ result: 15

Scala

Scalaでの関数定義はdef句を使うそうです。左から関数名、引数名、引数のデータ型、結果型(返却値)を宣言し関数を定義します。

object Main {
  def max(x: Int, y: Int): Int = {
    if(x > y) x
    else y
  }

  def main(args: Array[String]) :Unit = {
    val ret = max(10, 15)
    println("result: " + ret)
  }
}

こちらも結果は同じで下記のようになります。

$ result: 15

では今回はこの辺で。