java.util.Listの順序付けを担当するJavaクラスを実装しています。このクラスを使用すると問題が発生します。リストを注文することはできますが、元のリストに加えられたすべての変更を登録できるように、「元の」リストを変更せずにコピーしたいと思います。ソートされたリストにはオブジェクトが含まれ、そのフィールドの1つに分類IDが格納され、このIDがリストのインデックス値で更新されます。
クローンメソッドを使用しようとしましたが、リストは並べ替えられませんが、元のリストに加えられた変更はクローンリストでも更新されます。
それを達成する方法はありますか?
私のコード:
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;
}