把找出数组的最大值案例, 改造成方法, 可以支持返回任意整型动态数组的最大值数据
时间: 2024-09-22 08:06:43 浏览: 38
为了将找出数组最大值的功能封装成一个通用的方法,你可以创建一个名为`findMaxValue`的方法,它接受一个泛型类型的整数数组作为输入参数。这里是使用Java的一个示例:
```java
import java.util.Arrays;
public class ArrayUtil {
// 定义公共静态方法 findMaxValue,接收Integer数组作为参数
public static <T extends Number & Comparable<T>> T findMaxValue(T[] array) {
if (array == null || array.length == 0) {
throw new IllegalArgumentException("Array must not be empty or null");
}
// 初始化最大值为数组的第一个元素
T maxValue = array[0];
// 遍历数组,比较每个元素并更新最大值
for (T num : array) {
if (num.compareTo(maxValue) > 0) {
maxValue = num;
}
}
return maxValue;
}
public static void main(String[] args) {
Integer[] intArray = {5, 9, 1, 7, 3};
System.out.println("The maximum value in the integer array is: " + findMaxValue(intArray));
// 或者支持其他整型数组,如Long
Long[] longArray = {10L, 20L, 30L, 40L};
System.out.println("The maximum value in the long array is: " + findMaxValue(longArray));
}
}
```
在这个例子中,`<T extends Number & Comparable<T>>`是一个泛型约束,表示T必须是Number接口的实现并且实现了Comparable接口,这使得我们能够直接对数组中的元素进行比较。
阅读全文