Загрузка данных


package com.example.demo;

import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;

public class HelloController {
    @FXML
    private TextField display;

    private double firstNumber = 0;
    private String operator = "";
    private boolean start = true;

    @FXML
    protected void onDigitClick(ActionEvent event) {
        if (start) {
            display.setText("");
            start = false;
        }
        String value = ((Button)event.getSource()).getText();
        display.setText(display.getText() + value);
    }

    @FXML
    protected void onOperatorClick(ActionEvent event) {
        String value = ((Button)event.getSource()).getText();
        if (!"=".equals(value)) {
            if (!operator.isEmpty()) return;
            operator = value;
            firstNumber = Double.parseDouble(display.getText());
            start = true;
        }
    }

    @FXML
    protected void onClearClick() {
        display.setText("");
        operator = "";
        start = true;
    }

    @FXML
    protected void onResultClick() {
        if (operator.isEmpty()) return;
        double secondNumber = Double.parseDouble(display.getText());
        double result = 0;

        switch (operator) {
            case "+": result = firstNumber + secondNumber; break;
            case "-": result = firstNumber - secondNumber; break;
            case "*": result = firstNumber * secondNumber; break;
            case "/": 
                if (secondNumber != 0) result = firstNumber / secondNumber;
                else { display.setText("Ошибка"); return; }
                break;
        }
        display.setText(String.valueOf(result));
        operator = "";
        start = true;
    }
}