JavaFX,将 ArrayList 转换为 ObservableList
Posted
技术标签:
【中文标题】JavaFX,将 ArrayList 转换为 ObservableList【英文标题】:JavaFX, Casting ArrayList to ObservableList 【发布时间】:2014-04-07 04:02:53 【问题描述】:有没有办法将ArrayList
转换为ObservableList
?我想在不遍历 ArrayList
的情况下这样做。
更具体地说,我正在使用 ORMLite 从数据库中获取数据,并且我需要 ObservableList
作为从数据库中获取数据的方法的输出。
目前我正在做这样的事情:
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();
【问题讨论】:
【参考方案1】:你可以的
ObservableList<Stavka> oListStavaka = FXCollections.observableArrayList(listStavaka);
【讨论】:
感谢您的回答。这对我很有帮助。【参考方案2】:正如 Uluk Biy 的回答,但如果您不想将其与 FXCollections 的新列表混合, 就用这个吧……
oListStavaka.addAll(stavkaDao.queryForAll());
【讨论】:
以上是关于JavaFX,将 ArrayList 转换为 ObservableList的主要内容,如果未能解决你的问题,请参考以下文章
如何将 SVG 中的 feGaussianBlur 转换为 JavaFX 中的 GaussianBlur 效果?