IcePicK
Power Member
Uma das questões mais pertinentes em relação aos tipos genéricos do Java é a criação de arrays.
Por exemplo, como criar um array "nativo" partindo de uma colecção?
Uma das implementações possiveis deste método é:
Mas este método só funciona se:
Quais as vossas soluções para este problema?
Por exemplo, como criar um array "nativo" partindo de uma colecção?
Código:
public static <T> T[] toArray(final Collection<T> c);
Uma das implementações possiveis deste método é:
Código:
public static <T> T[] toArray(final Collection<T> c) {
return c.toArray((T[]) Array.newInstance(c.iterator().next().getClass(), 0));
}
Mas este método só funciona se:
- c tem pelo menos um elemento
- o primeiro elemento de c é mesmo do tipo T e não um sub-tipo
Quais as vossas soluções para este problema?