Несколько кнопок Java в один и тот же обработчик

Я пытаюсь сделать простой калькулятор с 20 кнопками и одним обработчиком. В Java я могу использовать оператор if с event.getSource () в ActionPerformed, чтобы проверить, какая кнопка нажата, но она не работает с обработчиком в javafx. Возможно ли в javafx, что все кнопки имеют один обработчик? (Я не хочу использовать Java 8 Lambdas.) В прошлый раз я пытался с setId / getId, но это тоже не работает (для меня).

public class Calculator extends Application {

    public Button b0, b1;

    @Override
    public void start(Stage primaryStage) {

        GridPane grid = new GridPane();

        b0 = new Button("0");
        b0.setId("0");
        b0.setMaxSize(Double.MAX_VALUE, Double.MAX_VALUE);
        grid.add(b0, 0, 1);
        b0.setOnAction(myHandler);

        b1 = new Button("1");
        b1.setId("1");
        b1.setMaxSize(Double.MAX_VALUE, Double.MAX_VALUE);
        grid.add(b1, 0, 0);
        b1.setOnAction(myHandler);

        Scene scene = new Scene(grid, 365, 300);
        scene.getStylesheets().add
            (Calculator.class.getResource("calculator.css").toExternalForm());

        primaryStage.setScene(scene);
        primaryStage.setResizable(false);
        primaryStage.show();
    }

    final EventHandler<ActionEvent> myHandler = new EventHandler<ActionEvent>(){

        @Override
        public void handle(final ActionEvent event) {
            Button x = (Button) event.getSource();
            if (x.getId().equals(b0.getId()))
                System.out.println("0");
            else if(x.getId().equals(b1.getId()))
                System.out.println("1");
        }
    };
    public static void main(String[] args) {
        launch(args);
    }

}

Ответы на вопрос(1)

Ваш ответ на вопрос