我明白了
Comparator < ? super T> comp
它根据指定比较器定义的顺序返回给定集合的最大元素。但是我不明白的目的
super T
谁能解释一下?
最佳答案
术语? super T
的意思是“未知类型,或者是 T 的父类(super class)”,用泛型的说法就是它的下界是 T。
使用此签名是因为 T 可以分配给任何类型为 T 或 T 的父类(super class)的变量,并与之进行比较。即,如果 Comparator 可以在其 compare() 方法中接受 T 的父类(super class),你可以传入一个 T。
这遵循 PECS 助记符:“Producer Extends,Consumer Super”,这意味着事物的生产者应该与具有上限边界(?扩展 T)和消费者(如比较器实现)的事物一起工作使用的东西)应该与下边界一起工作(?super T)。
关于java - java中Comparator中super的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13786298/