讓我先說,我DID搜索幾個小時,並沒有找到我所需要的。不同類型的數組列表不用鑄造?
我需要運行類(應用程序)的數組並使用當前應用程序的變量和方法。
public class App {
public final Integer number = 0;
}
public class Player extends App {
public final Integer number = 1;
}
public class Navigation extends App {
public final Integer number = 2;
}
public class Phone extends App {
public final Integer number = 3;
}
private ArrayList<App> apps = new ArrayList<App>();
apps.add(new Player());
apps.add(new Navigation());
apps.add(new Phone());
,如果我做
apps.get(0).number // = 0
我得到父母的(APP)
數量,如果我將它轉換爲玩家
(Player) apps.get(0).number // = 1
我得到期望的結果
現在,我想ru n到所有的N個應用程序(可能不止3)在應用 多的地方,但我不想做的事:
if (gun instanceof Player)
{
Player p = (Player) apps.get(0);
}else if .... N times... in N places
我也不想讓應用的接口,因爲我需要該應用默認。
如果你有更好的主意,就不需要使用數組列表。
在此先感謝。
我想我們需要知道你打算用'Player'等類型做什麼,然後才能提供幫助。如果你想用不同的類型來做同樣的事情,那麼你通常會讓它們實現一個接口或者一個特定類型的子類。 – 2013-04-27 09:39:05