Java 一个列表在实例化后是否可以以某种方式分配给另一个类的列表?
我试图在JavaFX中处理ListViewJava 一个列表在实例化后是否可以以某种方式分配给另一个类的列表?,java,list,listview,javafx,collections,Java,List,Listview,Javafx,Collections,我试图在JavaFX中处理ListView @FXML ListView<? extending Animals> listView; 当然,我知道我不能这样做,为什么,但既然ObservalElists处理刷新列表视图,我真的很想使用ObservalElists,ObservalElist,ObservalElist,而不是使用ObservalElist并将我的狗、猫和马列表转换为动物列表。此外,我需要在我的狗列表中包含狗的属性,因此在动物列表中存储狗不是一个选项
@FXML
ListView<? extending Animals> listView;
当然,我知道我不能这样做,为什么,但既然ObservalElists处理刷新列表视图,我真的很想使用ObservalElists,ObservalElist,ObservalElist,而不是使用ObservalElist并将我的狗、猫和马列表转换为动物列表。此外,我需要在我的狗列表中包含狗的属性,因此在动物列表中存储狗不是一个选项
我想知道是否有办法做到这一点,如果没有,最有效的绕过方法是什么。你可以这样做
@FXML
private ListView<Animal> listView ;
然后
ObservableList<Dog> dogs = FXCollections.observableArrayList(...);
listView.getItems().setAll(dogs);
或
这可能适用于,也可能不适用于,但是如果您需要从ListView中检索项目,则可以这样做。您还可以考虑创建多个ListVIEW ListVIEW、ListView等,并根据需要在UI中切换它们。应注意,ListVIEW.GETEMTS.StAtLaStuelist.只需将someList的内容复制到listView中当前使用的项目列表。与listView.SetItemsSamelist相反;someList中的更改不会更新ListView。。。
ObservableList<Dog> dogs = FXCollections.observableArrayList(...);
listView.getItems().setAll(dogs);
ObservableList<Cat> cats = FXCollections.observableArrayList(...);
listView.getItems().setAll(cats);