我有两个课程,项目和怪物。 Monster是Items的子类。我循环遍历项目实例的集合以查看它们是否与怪物实例匹配,如果是,则将项目实例强制转换为怪物实例。但是我不确定如何将arraylist中的特定项目转换为其他类型的类。继承我的代码,任何帮助都会有所帮助。
public void describe()
{
int j = 0;
while(j < iInstances.size())
{
if(iInstances.get(j).equals(mInstances.get(j)))
{
}
iInstances.get(j).describe();
}
}
答案 0 :(得分:2)
Monster monster = (Monster) iInstances.get(j);
答案 1 :(得分:0)
如果您想检查每个Item
是否是类Monster
的实例,您可以轻松地询问它的实例,然后转换为Monster
:
public void describe() {
for (Item item : iInstances) {
if (item instanceof Monster) {
Monster monster = (Monster) item;
// now do what you want with your monster
}
}
}