好,这是我的Java期末考试的一个练习题。我仍然掌握着数组的手,并且我正在研究小程序。但是我确实需要帮助,因为我真的很困惑。编写一个名为boundedAverage的静态方法,该方法带有3个参数。第一个参数是一个整数数组,后跟两个整数。该数组可以包含任意数量的正整数或负整数,甚至可以为空。第一个整数参数是一个下限,第二个整数是一个上限。该方法应将数组的平均值返回为双精度值,不包括大于或等于上限或小于或等于下限的所有数组数据点。您可以假设下限将始终小于或等于上限。
示例:给定一个名为“数据”的数组,其中包含{0,-2,5,10,-3,1,14,2,3}
boundedAverage(data, 0, 5) should return 2.0 = (1 + 2 + 3) / 3 as all others are ignored.
boundedAverage(data, -3, 10) should return 1.5 = (0 + -2 + 5 + 1 + 2 + 3) / 6
boundedAverage(data, -20, 20) should return 3.33333
boundedAverage(data, 5, 9) should return 0, without error.
Given an array called "empty_data" containing { }
boundedAverage(empty_data, 3, 5) should return 0, without error.
boundedAverage(data, 0, 5) {
double sum = 0.0;
for(int i = 0; i < data.length - 1; i++) {
if(data[i] > 0 && data[i] < 5) {
sum += data[i];
}
}
}