Java函數泛型允許設定上限和下限。上限(extends)指定函數接受或傳回的資料類型必須是指定類型的子類型,例如
。下限(super)指定函數接受或傳回的資料類型必須是指定類型的超類型,例如
。泛型使用可提高程式碼的可重複使用性和安全性。
Java 函數泛型的上限和下限
函數泛型是一種強大的機制,允許我們在編譯時指定函數可以處理的資料型態。 Java 中的泛型可以宣告上限和下限,以限制函數接受或傳回的資料類型。
上限(Upper Bound)
上限指定函數可以接受或傳回的資料類型必須是某個指定類型的子類型。它使用 extends 關鍵字指定。例如:
public void printNumber(T number) { System.out.println(number); }
登入後複製
此函數只能接受 Number 或其子類別的類型(例如,Integer、Double、Float)。
下限(Lower Bound)
下限指定函數可以接受或傳回的資料類型必須是某個指定類型的超類型。它使用 super 關鍵字指定。例如:
public void sumNumbers(List numbers) { double sum = 0; for (T number : numbers) { sum += number.doubleValue(); } }
登入後複製
此函數可以接受 Number 或其超類型的列表,例如 List