Como converter Lista <T> para Matriz t [] (para tipos primitivos) usando o método genérico?
Estou fazendo alguns testes com métodos genéricos e gostaria de transformar esses dois métodos abaixo (convertFloatListToArray e convertShortListToArray) em apenas um (convertListToArray):
public class Helper{
public static float[] convertFloatListToArray(List<Float> list){
float[] array = new float[list.size()];
for(int i = 0; i<list.size(); i++){
array[i] = list.get(i);
}
return array;
}
public static short[] convertShortListToArray(List<Short> list){
short[] array = new short[list.size()];
for(int i = 0; i<list.size(); i++){
array[i] = list.get(i);
}
return array;
}
}
Mas quando tento usar genéricos, como abaixo, tenho alguns erros:
public class Helper{
public static <T, E> T convertListToArray(List<E> list){
T array = new T[list.size()];
for(int i = 0; i<list.size(); i++){
array[i] = list.get(i);
}
return array;
}
}
Eu posso entender as limitações de java sobre genéricos, mas me pergunto se alguém conhece alguma solução, usando o método genérico, que não estou vendo.