2013-01-12 17 views
0

基本上我試圖從ArrayList a(allApps)添加一個項目到ArrayList b(myApps),但是我得到一個錯誤。從ArrayList a複製ResolveInfo項目到ArrayList b?

這就是我想:

public ArrayList myApps = new ArrayList(); 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    ... 
    for(final ResolveInfo app : allApps) { 
     addApp(app); 
    } 
} 

public void addApp(ResolveInfo app) { 
    ArrayList.add(app); // ERROR: Cannot make a static reference to the non-static method add(Object) from the type ArrayList 
} 

這個錯誤是什麼意思,我怎樣能得到我從一個陣列複製項目到另一個?

回答

0

你需要調用加上ArrayList的實例,而不是類本身,因爲你的描述,你要找的是什麼

public void addApp(ResolveInfo app) { 
    myApps.add(app); 
} 
1

ArrayList的添加方法不是靜態方法,因此您無法在ArrayList的實例外調用。聲明實例第一,然後調用add

應該myApps.add(app);

0

改變你的方法是這樣的:

public void addApp(ResolveInfo app) { 
    myApps.add(app); 
}