オブジェクトのセット(親)がありました。特定の条件について、そのオブジェクトに余分なデータを追加したいと考えています。そこで、親から拡張された子クラスを作成し、データを子に入れ、それを親セットに戻します。理論上は可能です。しかし、このようにするのは良い方法ですか?他に良い方法があれば教えてください。
別の方法は、親の代わりに子のセットを作成することです。データを子に直接入れます。しかし、親セットがJsonに変換され、すべての親オブジェクトに余分なフィールドが必要ないため、私はそれを行うことができません.
final LinkedHashSet<Parent> parentSet = new LinkedHashSet<Parent>();
parentSet.add(new Parent("AAA"));
parentSet.add(new Parent("ABC"));
parentSet.add(new Parent("DXX"));
parentSet.add(new Parent("GHI"));
final LinkedHashSet<Parent> childSet = new LinkedHashSet<Parent>();
final Iterator<Parent> iterator = parentSet.iterator();
while (iterator.hasNext()) {
final Parent parent = iterator.next();
if (parent.str.startsWith("A")) {
iterator.remove();
childSet.add(new Child(parent.str, 27));
}
}
parentSet.addAll(childSet);