古いリストのオブジェクトに影響を与えずに、リストを別のリストにコピーし、新しいリストに含まれるオブジェクトを変更するにはどうすればよいですか?
class Foo {
String title;
void setTitle(String title) { this.title = title; }
}
List<Foo> original;
List<Foo> newlist = new ArrayList<Foo>(original);
for (Foo foo : newlist) {
foo.setTitle("test"); //this will also affect the objects in original list.
//how can I avoid this?
}