Я реализую класс Java, ответственный за заказ java.util.List. Проблема возникает, когда я использую этот класс. Я могу заказать список, но я хочу скопировать "оригинальный" список без изменений, чтобы я мог регистрировать каждое изменение, внесенное в исходный список. Сортированный список содержит объект, и одно из его полей хранит идентификатор классификации, и этот идентификатор обновляется значением индекса списка.
Я попытался использовать метод clone, и он сохраняет список несортированным, но изменения, внесенные в исходный список, также обновляются в списке клонов.
Есть ли способ сделать это?
Мой код:
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
Метод 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;
}