Dicas de tipo Java na chamada de método genérico
Eu estou querendo saber qual é a maneira correta de chamar um método estático com uma assinatura como esta:
public static <T1, T2> Map<T1, Set<T2>> aggregate(List<Map<String, Object>> list,
String colK, String colV) {
...
}
Fiquei tentado a chamar assim por algum motivo:
Map<String, Set<Integer>> map = aggregate<String, Integer>(lData, "id", "ref");
mas não foi compilado, a menos que eu o alterasse para:
Map<String, Set<Integer>> map = aggregate(lData, "id", "ref");
Só estou me perguntando por que não precisava das dicas do lado direito. E, em vez disso, me deu erro de compilação. Ele diz que espera um ponto-e-vírgula após as dicas do lado direito. O segundo é uma maneira adequada de chamar o método? Alguém poderia lançar alguma luz, por favor?