
- Java泛型教程
- Java泛型 - 首頁
- Java泛型 - 概述
- Java泛型 - 環境設定
- 示例 - 泛型類
- Java泛型 - 泛型類
- 型別引數命名約定
- Java泛型 - 型別推斷
- Java泛型 - 泛型方法
- Java泛型 - 多個型別
- Java泛型 - 引數化型別
- Java泛型 - 原始型別
- 示例 - 有界型別
- 有界型別引數
- Java泛型 - 多個邊界
- 示例 - 集合
- Java泛型 - 泛型列表
- Java泛型 - 泛型集合
- Java泛型 - 泛型對映
- 示例 - 萬用字元
- 上界萬用字元
- 泛型 - 無界萬用字元
- 下界萬用字元
- 泛型 - 萬用字元指南
- 型別擦除
- Java泛型 - 型別擦除
- Java泛型 - 有界型別擦除
- 無界型別擦除
- Java泛型 - 方法擦除
- 泛型的限制
- Java泛型 - 沒有基本型別
- Java泛型 - 沒有例項
- Java泛型 - 沒有靜態欄位
- Java泛型 - 沒有強制轉換
- Java泛型 - 沒有instanceOf
- Java泛型 - 沒有陣列
- Java泛型 - 沒有異常
- Java泛型 - 沒有過載
- Java泛型有用資源
- Java泛型 - 快速指南
- Java泛型 - 有用資源
- Java泛型 - 討論
Java泛型 - 方法
您可以編寫單個泛型方法宣告,該宣告可以使用不同型別的引數進行呼叫。根據傳遞給泛型方法的引數型別,編譯器會適當地處理每個方法呼叫。以下是定義泛型方法的規則:
所有泛型方法宣告都具有由尖括號(< 和 >)分隔的型別引數部分,該部分位於方法的返回型別之前(在下一個示例中為 < E >)。
每個型別引數部分包含一個或多個用逗號分隔的型別引數。型別引數,也稱為型別變數,是指定泛型型別名稱的識別符號。
型別引數可用於宣告返回型別並充當傳遞給泛型方法的引數型別的佔位符,這些引數稱為實際型別引數。
泛型方法的主體與任何其他方法的主體一樣宣告。請注意,型別引數只能表示引用型別,不能表示基本型別(如 int、double 和 char)。
示例
以下示例說明了如何使用單個泛型方法列印不同型別的陣列:
public class GenericMethodTest { // generic method printArray public static < E > void printArray( E[] inputArray ) { // Display array elements for(E element : inputArray) { System.out.printf("%s ", element); } System.out.println(); } public static void main(String args[]) { // Create arrays of Integer, Double and Character Integer[] intArray = { 1, 2, 3, 4, 5 }; Double[] doubleArray = { 1.1, 2.2, 3.3, 4.4 }; Character[] charArray = { 'H', 'E', 'L', 'L', 'O' }; System.out.println("Array integerArray contains:"); printArray(intArray); // pass an Integer array System.out.println("\nArray doubleArray contains:"); printArray(doubleArray); // pass a Double array System.out.println("\nArray characterArray contains:"); printArray(charArray); // pass a Character array } }
這將產生以下結果:
輸出
Array integerArray contains: 1 2 3 4 5 Array doubleArray contains: 1.1 2.2 3.3 4.4 Array characterArray contains: H E L L O
廣告