web-dev-qa-db-ja.com

JavaFX、ArrayListからObservableListへのキャスト

ArrayListObservableListにキャストする方法はありますか? ArrayListを繰り返し処理せずに実行したいと思います。

具体的には、ORMLiteを使用してデータベースからデータを取得していますが、DBからデータを取得するメソッドの出力として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();
39
Miljac

できるよ

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

Uluk Biyの答えのように、FXCollectionsによる新しいリストとそれを混ぜたくない場合は、これを使用してください...

oListStavaka.addAll(stavkaDao.queryForAll());
1
Eric Chan