在Java中,方法签名之前的<t>是什么意思?</t>

时间:2015-04-15 17:05:45

标签: java static void

我想知道static <T>在这种情况下意味着什么?还是<T> void

我知道静态和无效都意味着什么,但我不确定<T>在这里意味着什么

 static <T> void sort(List<T> list, Comparator<? super T> c)

1 个答案:

答案 0 :(得分:2)

<T>表示此声明中使用了通用T。这有两个影响;

  • 第一个参数的第一个类型中的T必须与第二个参数中的类型匹配。 (并且? super T表示它必须是T的超类或接口。如果不使用泛型,则无法执行此操作。
  • 可以使用Collections.<Integer>sort(list, myComparator);
  • 等语句明确指定类型