Java 运行ArrayList时引发空指针异常<;复选框>;

Java 运行ArrayList时引发空指针异常<;复选框>;,java,arraylist,javafx,Java,Arraylist,Javafx,我试图通过下面的代码获取选中的复选框,并以此为基础获取一些值。但当我运行它时,它会抛出一个nullpointerexception。请告诉我如何解决这个问题 public class GenController implements Initializable { @FXML private Button Generate; @FXML private CheckBox lows; private CheckBox caps; private

我试图通过下面的代码获取选中的复选框,并以此为基础获取一些值。但当我运行它时,它会抛出一个nullpointerexception。请告诉我如何解决这个问题

public class GenController implements Initializable {

    @FXML
    private Button Generate;

    @FXML
    private CheckBox lows;
    private CheckBox caps;
    private CheckBox numb;
    private CheckBox sp;
    private CheckBox mcp;

    ArrayList<CheckBox> boxes = new ArrayList<CheckBox>();
    ArrayList<CheckBox> selected;


    public void buttonPressedGen(ActionEvent event) throws Exception {


        for (int i = 0; i < boxes.size(); i++) {
            if (boxes.get(i).isSelected()) {
                System.out.println(boxes.get(i).getText());
            }
        }

    }


    @Override
    public void initialize(URL location, ResourceBundle resources) {
        // TODO Auto-generated method stub
        boxes.add(lows);
        boxes.add(caps);
        boxes.add(numb);
        boxes.add(sp);
        boxes.add(mcp);
    }

}

您需要注释每个
复选框
引用,以便
FXMLLoader
注入它们:

@FXML
private CheckBox lows;
@FXML
private CheckBox caps;
@FXML
private CheckBox numb;
@FXML
private CheckBox sp;
@FXML
private CheckBox mcp;

如您所知,
caps
numb
等都是
null

请在代码中标记第54行。非常感谢您_D@checkmate请养成接受答案的习惯!事实证明,它对用户找到类似问题的答案很有用。我本来打算这样做,但它让我留下8分钟来接受:)
@FXML
private CheckBox lows;
@FXML
private CheckBox caps;
@FXML
private CheckBox numb;
@FXML
private CheckBox sp;
@FXML
private CheckBox mcp;