- 实验目的
(1)掌握Java语言基本语法。
(2)了解静态内部类的概念和使用。
(3)锻炼学生的思维能力。
- 实验内容
(1)多态对象的类型转换。
(2)Java static、final等关键字。
(3)利用静态内部类实现一次遍历数组即获得最大值与最小值。
- 实验步骤
- 编写MaxMin。在该类中定义了一个静态内部类Result和一个静态方法getResult()。在静态类中,定义了两个浮点型域:max表示最大值,min表示最小值。使用构造方法为其初始化,并提供get方法来获得两个值。GetResult()方法的返回值是Result类型,这样就可以既保存最大值,又保存最小值了。代码如下:
public class MaxMin {
public static class Result {
private double max;
private double min;
public Result(double max, double min) {
this.max = max;
this.min = min;
}
public double getMax() {
return max;
}
public double getMin() {
return min;
}
}
public static Result getResult(double[] array) {
double max = Double.MIN_VALUE;
double min = Double.MAX_VALUE;
for (double i : array) {
if (i > max) {
max = i;
}
if (i < min) {
min = i;
}
}
return new Result(max, min);
}
}
- 编写类Test进行测试。该类的main()方法中,使用随机数初始化了一个容量为5的数组。并求得该数组的最大值和最小值。代码如下:
import java.lang.reflect.Array;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
int[] array = new int[5];
Arrays.fill(array, 5);
for (int i = 4; i > -i; i--) {
if (i == 0) {
throw new DivideZeroException("除零异常");
}
System.out.println("array[" + i + "]/" + i + "=" + array[i] / i);
}
}
}
- 实验结果
运行程序,效果如图所示。