java - 一個泛型標簽問題
問題描述
新手問一個泛型問題
public static void main(String[] args) {ArrayList<Student> al = new ArrayList<>();al.add(new Student('大石榴',17,100));al.add(new Student('地雷',20,80));al.add(new Student('張大炮',21,60));Comparator<Student> cp = new Comparator<Student>() {@Override public int compare(Student o1, Student o2) {return o1.getAge() - o2.getAge(); }}; Collections.max(al, cp);//public static <T> T max(Collection<? extends T> coll, Comparator<? super T> comp)//這是max方法的源碼.// <T> 這個泛型在哪獲取到的?for(Student st : al){ System.out.println(st);} }
問題解答
回答1:Java中的泛型都是使用了類型擦除,你這里的<T> 只是一個類型變量。這個方法里面也只是用來代表@param <T> the class of the objects in the collection
相關文章:
1. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?2. docker-compose中volumes的問題3. docker-machine添加一個已有的docker主機問題4. docker網絡端口映射,沒有方便點的操作方法么?5. debian - docker依賴的aufs-tools源碼哪里可以找到啊?6. docker - 如何修改運行中容器的配置7. docker綁定了nginx端口 外部訪問不到8. docker 下面創建的IMAGE 他們的 ID 一樣?這個是怎么回事????9. golang - 用IDE看docker源碼時的小問題10. node.js - nodejs debug問題
