如何初始化ObservableList?字符串类型ObservableList的正确创建方式
ObservableList 初始化解决方案
你之前借助Polyline实例获取ObservableList<Double>的方式属于特定组件配套的特殊用法,仅适用于Double类型,如需使用任意泛型类型的ObservableList,直接调用JavaFX内置的FXCollections工具类的工厂方法即可。
String类型ObservableList初始化代码
import javafx.collections.FXCollections; import javafx.collections.ObservableList; // 初始化空的String类型ObservableList ObservableList<String> stringList = FXCollections.observableArrayList(); // 初始化时直接传入初始元素 ObservableList<String> initList = FXCollections.observableArrayList("文本1", "文本2", "文本3");
通用使用说明
- 仅声明
ObservableList<Double> list;时没有给变量赋值,所以会触发「变量未初始化」的编译错误,给变量赋值为FXCollections返回的实例即可解决该报错 - 需要从普通List转换为ObservableList时,直接将普通List作为参数传入方法即可:
List<String> ordinaryList = Arrays.asList("a", "b", "c"); ObservableList<String> convertedList = FXCollections.observableArrayList(ordinaryList); FXCollections.observableArrayList()支持任意泛型类型,除了String、Double等基础包装类,也支持自定义Java类作为列表元素类型。
内容的提问来源于stack exchange,提问作者Pankaj-Talesara
相关产品推荐
相关产品推荐

