Tag: 可变参数的函数

可变参数Java模糊呼叫

我对Java的可变参数方法有些困惑: public static int sum(int …a) { return 0; } public static double sum(double …a) { return 0.0; } 当我试图在不传递任何参数的情况下调用sum() ,调用方法的int版本。 我不明白为什么; 通常编译器必须引发错误。 相比之下,当我尝试不带任何参数地调用sum时,下面这段代码就会产生编译器错误: public static int sum(int …a) { return 0; } public static boolean sum(boolean …a) { return true; }