下面是一个示例代码,用于计算ArrayList
import java.util.ArrayList;
import java.util.Collections;
public class AverageWithoutExtremeValues {
public static void main(String[] args) {
ArrayList numbers = new ArrayList<>();
numbers.add(10);
numbers.add(20);
numbers.add(30);
numbers.add(40);
numbers.add(50);
double average = calculateAverageWithoutExtremeValues(numbers);
System.out.println("平均值:" + average);
}
public static double calculateAverageWithoutExtremeValues(ArrayList numbers) {
// 排除极端值
int min = Collections.min(numbers); // 最小值
int max = Collections.max(numbers); // 最大值
numbers.remove(Integer.valueOf(min));
numbers.remove(Integer.valueOf(max));
// 计算平均值
int sum = 0;
for (int num : numbers) {
sum += num;
}
return (double) sum / numbers.size();
}
}
在上面的示例中,我们首先定义了一个ArrayList
在calculateAverageWithoutExtremeValues方法中,我们使用Collections.min和Collections.max方法找到ArrayList中的最小值和最大值。然后,我们使用numbers.remove方法从列表中删除这些最小值和最大值。
接下来,我们使用一个循环来计算剩余元素的和,并使用numbers.size方法获取剩余元素的数量。最后,我们将总和除以元素数量,得到平均值,并将其返回。
请注意,此示例假设ArrayList中至少有3个元素,并且不考虑空列表的情况。
上一篇:ArrayList<Int> 类型中的 set(int, Int) 方法不适用于参数 (int, int),无法解析长度或长度不是一个字段。
下一篇:ArrayList<Integer> getDeclaredMethod("add", Integer.class) 抛出 NoSuchMethodException 异常。