2017-06-21 20 views
2

15/2を実行しようとすると、と2が整数であると考えられるため、7が返されます。 (double)15/2を実行すると、15がダブルであることがわかっているので、7.5を返します。変数で宣言せずに配列を使用する

配列に引数をとるtest()という名前の関数があるとします。最初に定義することなく、配列を関数に渡す方法はありますか?

私はこのような何かを試してみました:

test((int[]){1,2,3,4}) 

答えて

4

あなたはかなり近いです。あなたはこのようにそれを行うことができます。

test(new int[]{1, 2, 3, 4}); 
2

私はあなたが

public static double test(int... vals) { 
    return IntStream.of(vals).sum()/(double) vals.length; 
} 

int(s)は、任意の数で呼び出すことができますようにvariadic function(別名可変引数)、何かを探していると思います。

2.0 
を出力する。例えば、

System.out.println(test(1, 2, 3)); 

関連する問題