定义一个泛型类
public class Pair<T>
{private T first;
private T second;
public Pair() { first = null; second = null; }
public Pair(T first, T second) { this.first = first; this.second = second; }
public T getFirst() { return first; }
public T getSecond() { return second; }
public void setFirst(T newValue) { first = newValue; }
public void setSecond(T newValue) { second = newValue; }
}
定义一个泛型方法
class ArrayAlg {
public static <T extends Comparable> Pair<T> minmax(T[ ] a) {
if (a == null || a.length == 0) {
return null;
}
T min = a[0];T max = a[0];
for (int i = 1; i < a.length; i++) {
if (min.compareTo(a[i]) > 0) {min = a[i];}
if (max.compareTo(a[i]) < 0) { max = a[i];}
}
return new Pair<T>(min, max);
}
}
public static <T extends Comparable> Pair<T> minmax(T[ ] a) {
if (a == null || a.length == 0) {
return null;
}
T min = a[0];T max = a[0];
for (int i = 1; i < a.length; i++) {
if (min.compareTo(a[i]) > 0) {min = a[i];}
if (max.compareTo(a[i]) < 0) { max = a[i];}
}
return new Pair<T>(min, max);
}
}