1.实验题目:
4-22 求平均值接口与实现该接口的类。
声明Averagable接口如下,约定求数组元素平均值的方法。
// 求平均值接口
public interface Averagable{
public abstract double average(double[] value, int n); // 求数组前n个元素的平均值
public abstract double average(double[] value); //求数组元素的平均值
}
声明以下实现 Averagable接口的类,提供多种计算平均值的规则。
public class AverageAll implements Averagable // 求所有元素的平均值
public class AverageExceptMaxMin implements Averagable
// 去掉最大值和最小值,再求平均
- 实验目的:
定义接口,用两个类去实现接口,学习接口的使用,体会用类去实现接口。
求给定数组前n个元素的平均值
求给定数组前n个元素去掉最大值和最小值后的平均值
- 实验内容:
1.实验思路
定义Averagable接口,并定义一个抽象方法average(),并对其进行方法重载。
定义两个类,AverageAll类和AverageExceptMaxMin类,这两个类实现Averagable接口的两个方法。从而实现求给定数组前n个数的平均值、求n个数中去掉最大值最小值后的平均值。
- 关键代码截图
(1)Averagable接口的定义
(2)AverageAll类实现Averagable接口,实现对前n个数求平均值。
(3)AverageExceptMaxMin类实现Averagable接口,实现对前n个数除去最大值最小值后求平均值。
(中间用冒泡排序对数组中前n个数排序)
3.运行结果:
(1)对给定数组{10,2,30,50,60,82,11},调用上述四个方法。
(2)运行结果