Java函数如何用任何类型的参数计算平均值?
发布时间:2023-07-06 06:10:04
在Java中,计算平均值的函数可以使用任何类型的参数。下面是一个示例函数,它可以接受任何类型的参数并返回平均值。
public class AverageCalculator {
public static <T extends Number> double calculateAverage(T[] numbers) {
double sum = 0;
for (T number : numbers) {
sum += number.doubleValue();
}
return sum / numbers.length;
}
}
如上所示,这个函数使用了泛型来支持接受任何类型的数字参数。它使用<T extends Number>来限定参数的类型必须是Number的子类(如Integer、Double等),这样就可以使用doubleValue()方法来将数字转换为double类型。
在函数体中,我们使用一个循环来遍历参数数组并累加每个数字的值。最后,将总和除以参数数组的长度得到平均值,并将其返回。
除了数字类型之外,你还可以根据需要进行更改以支持其他类型的参数。例如,如果要计算字符串数组的平均长度,可以将函数修改为如下所示:
public class AverageCalculator {
public static double calculateAverage(String[] strings) {
int sum = 0;
for (String str : strings) {
sum += str.length();
}
return (double) sum / strings.length;
}
}
在这个示例中,我们将参数类型更改为String[]并在循环中使用length()方法获取每个字符串的长度。由于长度是整数类型,我们将总和强制转换为double类型以得到平均值。
