Estoy implementando una clase Java responsable de ordenar java.util.List. El problema viene cuando uso esta clase. Puedo ordenar la lista pero quiero copiar la lista "original" sin modificaciones para poder registrar cada cambio realizado en la lista original. La lista ordenada contiene un objeto y uno de sus campos almacena una identificación de clasificación, y esta identificación se actualiza con el valor de índice de la lista.Cómo copiar la colección java.util.list
Intenté utilizar el método de clonación y mantiene la lista sin clasificar, pero los cambios realizados en la lista original también se actualizan en la lista de clonación.
¿Hay alguna manera de lograrlo?
Mi Código:
List<Torero> listaTorero = tbTlgTorerolHome.findByExample(new Torero());
List<Torero> listaToreroTemp = ((List<Torero>) ((ArrayList<Torero>) listaTorero).clone());
Clasificacion clasificacion = new Clasificacion();
Iterator<Torero> iterTorero = clasificacion.getClasificacion(listaTorero, torero).iterator(); //Sorting List
método A Clasificacion:
public List<Torero> getClasificacion(List<Torero> listaToreroTemp, Torero torero)
{
List<Torero> listaTorero = new ArrayList<Torero>();
Collections.sort(listaToreroTemp,new ToreroClasifiacionComparator());
Iterator<Torero> iterTorero = listaToreroTemp.iterator();
int index=1;
while(iterTorero.hasNext())
{
Torero toreroTemp = iterTorero.next();
toreroTemp.setNumClasificacion(index);
listaTorero.add(toreroTemp);
index=index+1;
}
return listaTorero;
}
Publique su código para que podamos ver lo que está haciendo –
Probablemente relacionado: [Cómo copiar la colección java.util.list?] (Http://stackoverflow.com/questions/10457087/how-to-copy-java -util-list-collection) –
Acabo de editar mi pregunta y agregué un fragmento de código. – user1260893