2012-05-28 8 views
34

Solo quiero mover los valores de transitionHash map a la lista de arrays cardholderDataRecords.Conversión de HashMap en ArrayList

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

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

que estoy haciendo como

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

Está lanzando

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

Respuesta

97

Usted está tratando de echar la colección de valores a un solo ExceptionLifeCycleDataBean.

Usted puede obtener muy fácilmente la lista embargo:

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

O para añadir a una colección existente, con:

cardholderDataRecords.addAll(transitionHash.values()); 

No se proyecta fuera necesario.

+0

He convertido correctamente de HashMap a ArrayList usando addAll. Pero no puedo repetir el nuevo arraylist usando: para (ExceptionLifeCycleDataBean bean: cardholderDataRecords) ¿se puede hacer? – user2396640

+0

@ user2396640 No tengo idea de lo que quieres decir con eso. Tal vez deberías hacer una nueva pregunta con detalles. –

-1

Conversión de datos HashSet a la lista de matriz

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

misma manera, usted puede convertir a ArrayList Hashmap.

+0

¡no funciona! :( – Jorgesys

Cuestiones relacionadas