1、类中泛型定义格式:
public static <T>TgetMiddel(T a){.....}
注意:泛型方法可以定义在普通类中,也可以定义在泛型类中。
2、具体实现实例:
package com.pair.com;
import java.util.Calendar;
import java.util.GregorianCalendar;
public class PairTest2
{
public static void main(String[] args)
{
GregorianCalendar[] birthdays =
{new GregorianCalendar(1906, Calendar.DECEMBER, 9), new GregorianCalendar(1815, Calendar.DECEMBER, 10),
new GregorianCalendar(1903, Calendar.DECEMBER, 3), new GregorianCalendar(1906, Calendar.JUNE, 22)};
Pair<GregorianCalendar> mm = ArrayAg.minMax(birthdays);
System.out.println("min:" + mm.getFirst().getTime());
System.out.println("max:" + mm.getSecond().getTime());
}
}
class ArrayAg
{
/**
* @Title: minMax
* @Description:Gets the mininum and maximun of an array of typeParam
* @param: @param a
* @param: @return
* @return: Pair<T>
* @throws
*/
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 (T arr : a)
{
if (min.compareTo(arr) > 0)
{
min = arr;
}
if (max.compareTo(arr) < 0)
{
max = arr;
}
}
return new Pair<T>(min, max);
}
}