黑马程序员技术交流社区

标题: 泛型求解任何数组的最值 [打印本页]

作者: wangyafeng1990    时间: 2013-10-20 10:39
标题: 泛型求解任何数组的最值
public class NumFunc<T extends Number> {
public static void main(String[] args) {
  Double[] a=new Double[]{3.14,4.56,7.89,9.45};
  //Integer[] b=new Integer[]{8,7,4,5,2,4,1};
  System.out.println(minValue(a));
  System.out.println(maxValue(a));
}
/**
  * 最小值
  * @return 最小值
  */
public static <T> T minValue(T[] a) {
  T min = (T)a[0];
  for (int i = 1; i < a.length; i++){
   if (a[i].toString().compareTo(min.toString())<0){
    min = a[i]; // 未对参数类型 T, T 定义运算符 <
   }
  }
  return min;
}
/**
  * 最大值
  * @return 最大值
  */
public static <T> T maxValue(T[] a) {
  T max = (T)a[0];
  for (int i = 1; i < a.length; i++){
   if (a[i].toString().compareTo(max.toString())>0){
    max = a[i]; // 未对参数类型 T, T 定义运算符 >
   }
  }
  return max;
}
}





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2