Массивы Начинаются с 0, поэтому вы никогда не устанавливаете arrayButtons[0]
на что-либо, оставляя это как null
, то есть ожидая бросить NullPointer при вызове. Вы также никогда не инициализируете btn4
, который будет вызывать нулевой указатель при вызове, и, наконец, почему вы создаете массив из 33 кнопок, когда вы инициализируете только 3, которые выдают другие, хотите ли вы угадать, что это NPE
попробуйте это
public static Button[] arrayButtons = new Button[4];
public void initializeButtonArray() {
arrayButtons[0] = btn1;
arrayButtons[1] = btn2;
arrayButtons[2] = btn3;
arrayButtons[3] = btn4;
}
Добавить это
@FXML public Button btn4;
На вашей первой итерации в цикле arrayButtons он выбрасывает нулевой указатель, потому что ищет arrayButtons[0]
, но его значение равно null
, что прерывает весь цикл
Также, если вы ссылаетесь на FXML, вы не ставите = new Button();