我有两个名为“BaseCatalog”和“City”的类。 “BaseCatalog”是“City”的父类,换句话说,“City”扩展了“BaseCatalog”类。java.util.List中的类型转换元素
我有一个名为“getBaseCatalogObjects”的方法,它接受一个参数catalogType,并返回一个BaseCatalog对象列表。根据给定的类型,列表的类型可能不同,但它总是包含扩展主要BaseCatalog类的对象。
由于此方法是一种通用方法,因此它总是生成一个包含BaseCatalog对象的List。然而,在这种情况下,我肯定列表中的每个BaseCatalog实例也是一个城市对象:
List baseCatalogObjects = getBaseCatalogObjects(CatalogType.CITY);
我想要做的就是这个“baseCatalogObjects”列表转换到一个名为“cityObjects”名单这是一件好事像:
List cityObjects = (List) baseCatalogObjects;
是否有可能或有任何有效的方式做到这样那样的转换,而无需创建一个新的java.util.List实例,并遍历目录“baseCatalogobjects”?
2011-07-15
ozgur