java - 一个泛型标签问题
phpcn_u1582
phpcn_u1582 2017-05-17 10:09:25
[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);
        }
    }
phpcn_u1582
phpcn_u1582

全部回复(1)
为情所困

Java中的泛型都是使用了类型擦除,你这里的<T> 只是一个类型变量。这个方法里面也只是用来代表@param <T> the class of the objects in the collection

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号