2016-03-18 3 views
1

Я изучаю Java, отлаживая программы из различных обучающих программ. В данный момент я исправляю этот калькулятор: http://www.dreamincode.net/forums/topic/321933-creating-a-calculator-using-jframe/
Если вы нажмете «1/1», на дисплее появится «1.0» вместо «1». Я склоняюсь кОтладка калькулятора Java

if (abs(result-round(result)) < 0.000000001){(int)(result)} 

Что было бы подходящим способом исправить этот глюк? Спасибо заранее,

+0

это может помочь http://stackoverflow.com/ Вопросы/14204905/java-how-to-remove-trailing-zeros-from-a-double –

+0

'(int) (результат)' бессмысленно. Вы имеете в виду 'result = (int) (result);'? – MikeCAT

+0

Да, я имею в виду результат = (int) (результат) ;. Есть ли лучший способ достичь этого? Я пытаюсь изучить хорошие методы кодирования. – Stepan

ответ

1

Я думаю, что вы близки к тому, что вы хотите, но этот код, вероятно, более правильный способ сделать это:

if (abs(result-round(result)) < 0.000000001){(int)Math.round(result);} 
Смежные вопросы