我有一个VBox
,其中添加了许多类型Button
的节点。
private final VBox vbox = new VBox();
private final Button b1= new Button("1");
private final Button b2= new Button("2");
private final Button b3= new Button("3");
private final Button b4= new Button("4");
vbox.getChildren().addAll(b1,b2,b3,b4);
有没有办法将其子项目转换为Button
类型。
我需要这样的东西:
ObservableList<Button> children = (ObservableList<Button>) vbox.getChildren();
答案 0 :(得分:3)
如果你使用原始类型,这是可能的。
ObservableList<Button> children = (ObservableList)vbox.getChildren();
但请注意,如果类型不正确或子列表硬编码取决于类型参数的参数的参数类型,则在运行时很容易导致ClassCastException
。