java泛型中T、E、K、V、?等含義

java泛型中T、E、K、V、?等含義

  •  E - Element (在集合中使用,由於集合中存放的是元素),E是對各方法中的泛型類型進行限制,以保證同一個對象調用不一樣的方法時,操做的類型一定是相同的。E能夠用其它任意字母代替
  •  - Type(Java 類),T表明在調用時的指定類型。會進行類型推斷
  •  - Key(鍵)
  •  - Value(值)
  •  - Number(數值類型)
  • ? -  表示不肯定的java類型,是類型通配符,表明全部類型。?不會進行類型推斷

泛型類定義

//緊跟類名後面
public class Test<T>{}

泛型方法定義

//緊跟修飾符後面(public)
public <T> T Test1(T t){}

?通配符使用

//變量賦值或變量聲明時候使用
List<?> list;
List<? extends Number> uNumberList;
List<? super Integer> intgerList;

注:List<? extends T>和List <? super T>有什麼區別java

  • List<? extends T>能夠接受任何繼承自T的類型的List,
  • List<? super T>能夠接受任何T的父類構成的List。
  • 例如List<? extends Number>能夠接受List<Integer>或List<Float>。
相關文章
相關標籤/搜索