Maison  >  Questions et réponses  >  le corps du texte

java - un problème de balise générique

Un débutant pose une question générique

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);
        }
    }
phpcn_u1582phpcn_u15822712 Il y a quelques jours591

répondre à tous(1)je répondrai

  • 为情所困

    为情所困2017-05-17 10:11:25

    Les génériques en Java utilisent tous l'effacement de type, et le <T> ici n'est qu'une variable de type. Cette méthode est uniquement utilisée pour représenter @param <T> the class of the objects in the collection

    répondre
    0
  • Annulerrépondre