オブジェクトのコピーを作成し、そのデータにアクセスする目的で、何が良いの?オブジェクトを複製する
1.新しいオブジェクトを作成しているとして、あなたが
HashSet<String> myClone = new HashSet<String>(data);
2.クローンオブジェクトコンストラクタを通じて クローンを作成するデータでそれを初期化し、あなたがそれを信じるタイプにキャスト
HashSet<String> myClone = (HashSet<String>) data.clone();
可能な複製http://stackoverflow.com/questions/2356809/shallow-copy-of-a-map-in-java –
@Mansoorは正しいです:コピーコンストラクタは間違いなく道のりです。 – mre
@mre:コピーコンストラクタを使用すると、コピーされるオブジェクトと型が一致するオブジェクトではなく、新しいオブジェクトが指定された型のオブジェクトになります。場合によっては、これは非常に悪いことがあります。 ToyotaPriusに車両のコピーコンストラクタを呼び出すと、コピーされたToyotaPriusのものと一致する車両関連のプロパティを持つビークルが生成されますが、元のビークルのToyota-Prius固有の情報はコピーで省略されます。そのようなセマンティクスは時には望ましいことがありますが、しばしば望ましいものは、その特性が元のものと一致するToyotaPriusです。 – supercat