1. 程式人生 > >一個關於<T>泛型的例子

一個關於<T>泛型的例子

eric 必須 代碼量 print span float ati 暫時 代碼

  偶然看見這樣一個案例,先上代碼:

  

public class GenericAdd{

//泛型方法實現兩個數相加
public <T extends Number> double add(T t1, T t2){
double sum = 0.0;
sum = t1.doubleValue() + t2.doubleValue(); return sum;
}
public static void main(String[] args){
test();
}

public static void test(){
GenericAdd addTest = new GenericAdd();//新建GenericAdd類

int num1 = 3;
int num2 = 4;
System.out.println("整數和:"+addTest.add(num1, num2));//整數相加

float num3 = 3.0f;
float num4 = 7.0f;
System.out.println("浮點數和:"+addTest.add(num3, num4));//浮點數相加

double num5 = 99.0;
double num6 = 1.0;
System.out.println("雙精度浮點數和:"+addTest.add(num5, num6));//雙精度浮點數相加

long num7 = 300;
long num8 = 700;
System.out.println("長整數和:"+addTest.add(num7, num8));//長整數相加
}
}

  這段代碼很好的解釋了我們為啥要用泛型,從上面的代碼中我們可以假設,如果我們不用泛型的話,那麽我麽們在寫add這個方法的時候,我們需要寫4個,因為我們的參數是不一樣的,那麽當我們的參數類型改變的時候,我們必須重新寫一個方法,方法所要做的內容都不變,變得僅僅是參數而已,很顯然,在這個時候我們加入泛型的概念,就大大減少的代碼量。暫時好處只到這。

原文出處:https://q.cnblogs.com/q/101503/

一個關於<T>泛型的例子