2014-03-05 107 views
27

有沒有辦法將ArrayList投射到ObservableList?我想這樣做,而不是迭代通過ArrayListJavaFX,將ArrayList投射到ObservableList

更具體地說,我使用ORMLite從數據庫中獲取數據,並且我需要ObservableList作爲從DB獲取數據的方法的輸出。

目前,我做這樣的事情:

ArrayList<Stavka> listStavaka = new ArrayList<>(); 
Dao<Stavka, Integer> stavkaDao = DaoManager.createDao(connection, Stavka.class); 
listStavaka = (ArrayList<Stavka>) stavkaDao.queryForAll(); 
ObservableList<Stavka> oListStavaka = FXCollections.observableArrayList(); 
for (Stavka stavka : listStavaka) { 
    oListStavaka.add(stavka); 
} 

,我願做這樣的事情:

ObservableList<Stavka> listStavaka = FXCollections.observableArrayList(); 
Dao<Stavka, Integer> stavkaDao = DaoManager.createDao(connection, Stavka.class); 
listStavaka = (ObservableList<Stavka>) stavkaDao.queryForAll(); 

回答

61

你可以做

ObservableList<Stavka> oListStavaka = FXCollections.observableArrayList(listStavaka);