Salve.
Fino a questo momento conoscevo i Generics di Java ed utilizzavo classi che si basavano su di essi, oggi ho cominciato ad utilizzarli io stesso per le mie classi e c'è una parte del loro funzionamento che non mi è chiara.
So che i tutorial ufficiali di Java parlano di questo ma anche da quelli non sono ancora riuscito a capire bene.
Il problema riguarda array generici.
Se io ho una classe Classe<T>, con un campo privato ArrayList<T> (ma anche più generalmente un qualsiasi List<T>), non riesco a scrivere un metodo funzionante che mi restituisca un semplice array di elementi di tipo T.
Innanzitutto, è possibile? A quanto leggo online mi pare di si.
E' corretto concettualmente? Nel senso, non vedo problemi di sicurezza in quanto non c'è input quindi, se tutto il resto è implementato correttamente, non dovrebbero sorgere problemi di casting, giusto?
Come faccio? Ho trovato svariati modi online ma francamente non ci ho capito molto, complice qualche carenza in inglese
Insomma:
Grazie.codice:class Class<T> { ArrayList<T> = new ArrayList<>(); public T[] getElements() { // qui che ci metto? il metodo è dichiarato correttamente? } }

Rispondi quotando