Пожалуйста, ознакомьтесь с приведенным ниже кодом. Здесь, в приведенном ниже методе, каково именно использование этих параметров <K,V>
перед возвратом метода метода?Что такое общий тип возврата
<K, V> boolean
Подробный код ниже:
public class Util {
// Generic static method
public static <K, V> boolean compare(Pair<K, V> p1, Pair<K, V> p2) {
return p1.getKey().equals(p2.getKey()) &&
p1.getValue().equals(p2.getValue());
}
}
И finall мы вызываем его как boolean same = Util.<Integer, String>compare(p1, p2);
: Вот что мы должны делать с <Integer, String>
?
Это не избыточно. Если вы не укажете параметры типа, то как компилятор узнает, являются ли они параметрами типа вместо конкретных имен типов? (Только тот факт, что это одна буква верхнего регистра, автоматически не делает ее параметром типа). – Jesper
@ Jesper хорошая точка, обновленный ответ – codebox