java怎么獲取一個泛型方法的真實泛型類型?
我認為,如果在方法內部獲取還是可行的,但如果希望通過一個方法來獲取一個泛型方法的真實泛型類型,那應該是實現不了。
首先Java中的泛型,也叫參數化類型,沒記錯泛型應該是jdk5引入的特性,泛型目的在于使數據類型可以作為參數傳入,從而可以動態的改變某個變量的數據類型。
那么什么是泛型方法呢?就是泛型類型是聲明在方法上,只有當調用該方法時才會將真實類型傳入。如果你是在方法內部獲取那直接調用泛型對象的getClass方法即可。但如果希望通過一方法來獲取某個泛型方法的真實類型,我認為沒法實現。因為未調用方法時,真實的數據類型還未入,所以根本無法取到泛型對應的真實類型。
所以下面我就說說如何在泛型方法內部獲取泛型的真實類型。
老規矩,咱寫段代碼再來解釋。泛型方法的例子如下圖:
在上圖中,我聲明了一個泛型方法:findFirst, 用于獲取數組的第一個元素。
運行結果如下圖:
以上就是我的答案,希望對你有所幫助吧