LoginSignup
1
0

More than 1 year has passed since last update.

【Java】3個以上の複数の値からMAX(もしくはMIN)値を取得する際にどう書けばいいか

Posted at

概要

例えば、配列にもListにも格納されてないintの値が3個以上あって、その中からMAXやMINを取得したい場合、どういうふうに書くのが良いでしょうか。Math.max関数を入れ子にしたり、一度Listに入れてStreamAPIのmax関数を使うとかもありだと思いますが、もう少し良い書き方ないかなと思い、今回メモ書きとして残しておきます。

対応案

  • Find the max of 3 numbers in Java with different data typesのstackoverflowの記事に色々対応方法書いてありますが、可変引数でメソッド化して、その後にList化してmaxを取るやり方が個人的には一番スマートかなと感じました。
  • 可変引数についてはこちらを参照してください。

実装サンプル

sample.java
import java.util.Arrays;
import java.util.Collections;

public class MaxTest {

    public static void main(String[] args){
        int test1 = 3;
        int test2 = 4;
        int test3 = 5;
        System.out.println(getMax(test1, test2, test3));
    }

    private static int getMax(Integer... vals) {
        return Collections.max(Arrays.asList(vals));
    }
}

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0