PDA

View Full Version : java - problema ClassCastException


G.TheHamleter
31-01-2015, 16:47
Ciao a tutti !...

volevo chiedervi una cosa su un caso di ClassCastException

Se io ho una Collection<T> e voglio un array, come mai ottengo tale eccezione facendo ...

Collection <T> collezione (passata come parametro di metodo)

T[] array = (T[]) collezione.toArray(); --> ClassCastException

il metodo mi dà un array di Object ma io sono sicuro che quell'array di object è di tipo T quindi come mai il cast fallisce ?

Grazie !

Daniels118
06-02-2015, 12:06
Edit: mi sono accorto che il link non è stato riportato correttamente, ci riprovo...
Prova con questo: http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html#toArray(T[])

vittorio130881
06-02-2015, 12:48
ti può essere utile questo

<T> T[] toArray(T[] a) restituisce un array di oggetti di tipo parametro T a partire da una collezione. Per esempio considerando l’oggetto progBands dell’esempio sul metodo iterator(), con il seguente codice andiamo a riempire un array di stringhe con il contenuto della collezione, e il successivo ciclo foreach produrrà lo stesso output del ciclo che abbiamo visto prima con l’iterator:

String [] progBandsArray = progBands.toArray(new String[0]);
for (String progBand : progBandsArray)
{ System.out.println(progBand); }”