泛型是在jdk1.5以後引入的,咱們能夠在類的聲明處增長泛型列表,如:<T,E,V>。此處,字符能夠是任何標識符,通常採用這3個字母。spa
class MyCollection<E> {// E:表示泛型; Object[] objs = new Object[5]; public E get(int index) {// E:表示泛型; return (E) objs[index]; } public void set(E e, int index) {// E:表示泛型; objs[index] = e; } }
泛型E像一個佔位符同樣表示「未知的某個數據類型」,咱們在真正調用的時候傳入這個「數據類型」。code
public class TestGenerics { public static void main(String[] args) { // 這裏的」String」就是實際傳入的數據類型; MyCollection<String> mc = new MyCollection<String>(); mc.set("aaa", 0); mc.set("bbb", 1); String str = mc.get(1); //加了泛型,直接返回String類型,不用強制轉換; System.out.println(str); } }