2012-05-28 15 views
34

Voglio solo spostare i valori della mappa di transizioneHash nell'arrayylist cardholderDataRecords.Conversione di HashMap in ArrayList

HashMap<String,ExceptionLifeCycleDataBean> transitionHash = new HashMap<String,ExceptionLifeCycleDataBean>(); 

ArrayList<ExceptionLifeCycleDataBean> cardholderDataRecords = new ArrayList<ExceptionLifeCycleDataBean>(); 

sto facendo come

cardholderDataRecords.add((ExceptionLifeCycleDataBean) transitionHash.values()); 

Sta gettando

java.lang.ClassCastException: java.util.HashMap$Values cannot be cast to com.reportss.bean.ExceptionLifeCycleDataBean 

risposta

97

Si sta cercando di lanciare l'insieme dei valori ad un singolo ExceptionLifeCycleDataBean.

Si può facilmente ottenere la lista però:

List<ExceptionLifeCycleDataBean> beans = 
    new ArrayList<ExceptionLifeCycleDataBean>(transitionHash.values()); 

o per aggiungere ad una collezione esistente, con:

cardholderDataRecords.addAll(transitionHash.values()); 

No calchi necessario.

+0

Ho convertito con successo da HashMap a ArrayList usando addAll. Ma non posso fare un ciclo al nuovo arraylist usando: per (ExceptionLifeCycleDataBean bean: cardholderDataRecords) può essere fatto? – user2396640

+0

@ user2396640 Non ho idea di cosa intendi con questo. Forse dovresti fare una nuova domanda con i dettagli. –

-1

Conversione di dati HashSet alla lista di array

ArrayList<ExceptionLifeCycleDataBean> cardholderDataRecords = new ArrayList<ExceptionLifeCycleDataBean>(transitionHash); 

stesso modo, è possibile convertire ArrayList a HashMap.

+0

non funziona! :( – Jorgesys

Problemi correlati