"BaseCatalog"と "City"の2つのクラスがあります。 "BaseCatalog"は "City"の親クラスであり、 "City"は "BaseCatalog"クラスを拡張しています。java.util.Listの要素の型入れ
"getBaseCatalogObjects"という1つのパラメータcatalogTypeをとるメソッドがあり、 はBaseCatalogオブジェクトのリストを返します。与えられた型によれば、Listの型は異なるかもしれませんが、常にBaseCatalogクラスを拡張するオブジェクトを含んでいます。
このメソッドは汎用メソッドであるため、常にBaseCatalogオブジェクトを含むListを生成します。しかし、この場合には、私は、リスト内の各BaseCatalogインスタンスはまた、市のオブジェクトであると確信しています:
List<BaseCatalog> baseCatalogObjects = getBaseCatalogObjects(CatalogType.CITY);
私は何をしたいことは何かである「cityObjects」と呼ばれるリストには、この「baseCatalogObjects」リストを変換することです以下のような:
List<City> cityObjects = (List<City>) baseCatalogObjects;
ことが可能ですか「baseCatalogobjectsを」新しいjava.util.Listのインスタンスを作成し、リストを反復処理することなく、このような変換を行うための任意の効率的な方法がありますか?
お手伝いします:) –