泛型方法
實(shí)例
public class MaximumTest
{
? // 比較三個(gè)值并返回最大值
? public static <T extends Comparable<T>> T maximum(T x, T y, T z)
? {? ? ? ? ? ? ? ? ? ?
? ? ? T max = x; // 假設(shè)x是初始最大值
? ? ? if ( y.compareTo( max ) > 0 ){
? ? ? ? max = y; //y 更大
? ? ? }
? ? ? if ( z.compareTo( max ) > 0 ){
? ? ? ? max = z; // 現(xiàn)在 z 更大? ? ? ? ?
? ? ? }
? ? ? return max; // 返回最大對(duì)象
? }
? public static void main( String args[] )
? {
? ? ? System.out.printf( "%d, %d 和 %d 中最大的數(shù)為 %d\n\n",
? ? ? ? ? ? ? ? ? 3, 4, 5, maximum( 3, 4, 5 ) );
? ? ? System.out.printf( "%.1f, %.1f 和 %.1f 中最大的數(shù)為 %.1f\n\n",
? ? ? ? ? ? ? ? ? 6.6, 8.8, 7.7, maximum( 6.6, 8.8, 7.7 ) );
? ? ? System.out.printf( "%s, %s 和 %s 中最大的數(shù)為 %s\n","pear",
? ? ? ? "apple", "orange", maximum( "pear", "apple", "orange" ) );
? }
}
泛型類
public class Box<T> {
? private T t;
? public void add(T t) {
? ? this.t = t;
? }
? public T get() {
? ? return t;
? }
? public static void main(String[] args) {
? ? Box<Integer> integerBox = new Box<Integer>();
? ? Box<String> stringBox = new Box<String>();
? ? integerBox.add(new Integer(10));
? ? stringBox.add(new String("菜鳥教程"));
? ? System.out.printf("整型值為 :%d\n\n", integerBox.get());
? ? System.out.printf("字符串為 :%s\n", stringBox.get());
? }
}