前面介绍的无论是泛型类还是泛型方法,基本上都是把定义的类型参数作为一个整体来操作,放到数组或取出来,顶多就是调用了一下 hashCode() 方法,因为这是 Java 的根对象拥有的方法。比如说一个泛型数组,要得到其中的最小元素:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
package com.unmi; /** * 泛型,类型变量的限定 * @author Unmi */ public class ArrayAlg { public static <T> T main(T[] a){ if(a==null || a.length ==0){ return null; } T smallest = a[0]; for(int i=0;i<a.length;i++){ if(smallest.compareTo(a[i])>0){ smallest = a[i]; } } return smallest; } } |