以下の Java コードを実行すると、34.5 の最大値が表示されるはずです。代わりに、2.0 です。変!このコードの何が問題なのか誰か教えてもらえますか? ありがとう。
public class VarargsDemo {
public static void main(String args[]){
printMax(34.5, 3, 5, 6, 2);
printMax(new double[]{1,2,3});
}
public static void printMax(double...numbers){
if (numbers.length==0){
System.out.println("No argument passed");
return;
}
double result=numbers[0];
for (int i=1; i<numbers.length;i++)
result=numbers[i];
System.out.println("the max value is "+result);
}
}
出力:
the max value is 2.0
the max value is 3.0