我有一個ArrayList,其中包含超類和一些子類對象的對象。我們稱它們爲subclass1和subclass2。Java - 從超類的ArrayList中排序子類
有沒有一種方法可以去ArrayList和辨別哪些對象是SuperClass,subclass1和subclass2。所以我可以把它們放入ArrayList和ArrayList。
這是一個過於簡化的版本,但它展示了我希望做的事情。
public class food{
private String name;
public food(String name){
this.name = name;
}
}
public class pudding extends food{
public pudding(String name){
super(name);
}
}
public class breakfast extends food{
public breakfast(String name){
super(name);
}
}
public static void main(String args[]){
ArrayList<food> foods = new ArrayList();
foods.add(new food("Sausage"));
foods.add(new food("Bacon"));
foods.add(new pudding("cake"));
foods.add(new breakfast("toast"));
foods.add(new pudding("sponge"));
foods.add(new food("Rice"));
foods.add(new breakfast("eggs"));
ArrayList<pudding> puds = new ArrayList();
ArrayList<breakfast> wakeupjuices = new ArrayList();
for(food f : foods){
//if(f is pudding){puds.add(f);}
//else if(f is breakfast){wakeupjuices.add(f);}
}
}
查找'instanceof' – kuporific 2015-02-23 14:19:11
非常感謝您 – TheOnlyWAR10CK93 2015-02-23 14:21:34
只是對未來的祕訣:不相關的問題,但Java約定需要大寫的類名稱。這種語言並不需要它,但是當你與其他人一起發展時,如果你這樣做,你會發現你的體驗將會更加順利。 :-) – Tenner 2015-02-23 14:24:20