如何在 JavaFX 上的 XYChart 中删除“为可变参数创建未经检查的泛型数组”?

我正在学习 JavaFX,我也是 Java 的新手。(我在 Windows 中使用 Java8。)


示例代码如下。


XYChart.Series series1 = new XYChart.Series();

eries1.setName("남자");

series1.setData(FXCollections.observableArrayList(

        new XYChart.Data("2015", 70),

        new XYChart.Data("2016", 40),

        new XYChart.Data("2017", 50),

        new XYChart.Data("2018", 30)

));

在此代码中,我可以看到一个警告。那是,


Unchecked call to 'Data(X, Y)' as a member of raw type 'javafx.scene.chart.XYChart.Data'

虽然代码有效,但我想删除此警告,因为我不擅长 Java 泛型编程,想通过示例代码了解更多信息。


删除该警告的正确方法是什么?


SMILET
浏览 126回答 2
2回答

函数式编程

更改看起来像的行new XYChart.Data("2015", 70)使用“菱形运算符”指定推断的泛型类型<>。喜欢,new XYChart.Data<>("2015", 70)如果使用旧版本的 Java(没有菱形运算符),请提供like<X,Y>中记录的类型参数XYChart.Datanew XYChart.Data<String, Integer>("2015", 70)

呼唤远方

以下没有给出java 12 的警告XYChart.Series<String, Integer> series1 = new XYChart.Series<>(); ObservableList<XYChart.Data<String, Integer>> list = FXCollections.observableArrayList(); list.add(new XYChart.Data<>("2015", 70)); list.add(new XYChart.Data<>("2016", 40)); list.add(new XYChart.Data<>("2017", 50)); list.add(new XYChart.Data<>("2018", 30)); series1.setData(list);@SuppressWarning基本上,在使用 method 时,您无法摆脱警告(除了使用 annotation ) addAll()。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java