2014-03-05 71 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);