Я делаю программу-калькулятор в Java с графическим интерфейсом на качелях. Мой калькулятор после операции, скажем, умножение выбрасывает двойное число, и даже если нет десятичных разрядов, число ищет ex. как это: 2 * 2 = 4,0. Мне было интересно, есть ли способ заставить программу определять, нужно ли ей показывать десятичную дробь или нет, поэтому, если число является целым числом, оно будет показывать целое число, например: 2 * 2 = 4.
Я пытаюсь сделать это так:
JButton btnEquals = new JButton("=");
btnEquals.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
SecondNum = Double.parseDouble(txtDisplay.getText());
if (operation == "+") {
txtDisplay.setText(String.valueOf(FirstNum + SecondNum));
if ((FirstNum + SecondNum) == Integer.parseInt(String.valueOf(FirstNum + SecondNum))){
txtDisplay.setText(String.valueOf(Integer.parseInt(String.valueOf(FirstNum + SecondNum))));
}
}
}
внутри первого "если" я сделал второй раз, если двойной результат первого числа и второго числа равен целочисленному эквиваленту этой операции, на дисплее должна появиться целочисленная форма, sinc double не необходимость. Это не работает, программа вылетает.