私には2つの機能があります
public static double avg(int[] values) {
if(values == null || values.length == 0) return -1;
double sum = 0;
for(int value:values) {
sum = sum + value;
}
return (sum/values.length);
}
public static double avg(double[] values) {
if(values == null || values.length == 0) return -1;
double sum = 0;
for(double value:values) {
sum = sum + value;
}
return (sum/values.length);
}
Spel 式エンジンを使用して式を評価しています。このコードをデプロイして式 avg({3,4,5}) または avg({3.0,4.0,5.0}) を呼び出すと、次のエラーが発生します。
Caused by: org.springframework.expression.spel.SpelEvaluationException: EL1033E:(pos 0): Method call of 'avg' is ambiguous, supported type conversions allow multiple variants to match
int[] 配列は、評価中に暗黙的に double[] に変換されますか?
単一関数 avg(double[] values) にしましょうか??
ありがとう、
ビジェイ・ボア