2012-05-28 10 views
34

Po prostu chcę przenieść wartości mapy transitionHash na listę tablic cardholderDataRecords.Konwertowanie HashMap na ArrayList

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

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

robię jako

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

To wyrzucanie

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

Odpowiedz

97

Próbujesz rzucić zbiór wartości do jednego ExceptionLifeCycleDataBean.

bardzo łatwo można dostać listę choć:

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

lub dodać do istniejącego zbioru, z:

cardholderDataRecords.addAll(transitionHash.values()); 

nr rzuca konieczne.

+0

Udało mi się przekonwertować z HashMap na ArrayList za pomocą metody addAll. Ale nie mogę zapętlić nowej listy za pomocą: dla (ExceptionLifeCycleDataBean bean: cardholderDataRecords) czy można to zrobić? – user2396640

+0

@ user2396640 Nie mam pojęcia, co przez to rozumiesz. Może powinieneś zadać nowe pytanie ze szczegółami. –

-1

konwersji danych HashSet do listy tablicy

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

sam sposób można przekonwertować ArrayList do HashMap.

+0

to nie działa! :( – Jorgesys