View Full Version : [Java] Cast da Collection a Set URGENT!!!
Domanda velocissima!! Come faccio a castare una Collection in un Set?? :confused:
Ho provato con un cast esplicito ma mi da errore:
Collection collection = new ArrayList();
collection.add(...);
...
Set set = (Set)collection;
:what:
Domanda velocissima!! Come faccio a castare una Collection in un Set?? :confused:
Ho provato con un cast esplicito ma mi da errore:
Collection collection = new ArrayList();
collection.add(...);
...
Set set = (Set)collection;
:what:A livello di compilazione il cast non fa una piega: una collection "potrebbe" essere un Set.
Ma l'oggetto che assegni a collection è un ArrayList, quindi il cast fallisce a run-time lanciando ClassCastException!!!!
Se l'oggetto reale è un ArrayList, non lo puoi certo far diventare per "magia" un Set! ;)
:rolleyes: ok,purtroppo sono le prime volte che uso strutture dati.. Cosa dovrei mettere al posto di new ArrayList x fare in modo che il cast possa venire esplicito?? :help:
:rolleyes: ok,purtroppo sono le prime volte che uso strutture dati.. Cosa dovrei mettere al posto di new ArrayList x fare in modo che il cast possa venire esplicito?? :help:Non mi è chiaro cosa vuoi fare ..... non è che puoi scegliere una collezione così a caso, tanto per far andare bene un cast! Spiega cosa devi fare.
Allora,nel mio progetto lavoro tutto con collection,eccetto che una struttura, che la dottoranda x cui sto lavorando vuole in Set.. ora sto facendo un gran gran casinen x riuscire a fare andare il tutto.. in realtà non so neanch'io bene dove voglio arrivare a parare, l'importante è che il programma giri senza errori,almeno x stasera.. vojo dormire!!!! :cry: :cry: :cry:
Allora,nel mio progetto lavoro tutto con collection,eccetto che una struttura, che la dottoranda x cui sto lavorando vuole in Set.. ora sto facendo un gran gran casinen x riuscire a fare andare il tutto.. in realtà non so neanch'io bene dove voglio arrivare a parare, l'importante è che il programma giri senza errori,almeno x stasera.. vojo dormire!!!! :cry: :cry: :cry:Potrei dirti di fare:
Collection collection = new HashSet ();
e ti funzionerebbe. Ma potrebbe anche darsi che non sia la implementazione di Set più adatta per quello che devi fare! Set è solo una interfaccia. Quello che serve è istanziare un oggetto che implementa Set. Ora ... ce ne sono svariate di implementazioni: HashSet, TreeSet, LinkedHashSet ecc.... Ognuna ha delle caratteristiche particolari e vantaggi/svantaggi. Senza sapere esattamente cosa ci devi fare .... beh, potrei dirti una qualunque a caso di queste!
Dovresti conoscere un po' meglio il Collections Framework.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.