2016-02-06 3 views
-2
else if (bb.equals("Dollar") && cc.equals("Pound")){ 
     input = JOptionPane.showInputDialog("What amount would you like to convert?:"); 
     double aa = Double.parseDouble(input); 
     double output =(aa*rate); 
     JOptionPane.showMessageDialog(null, String.format("Your amount is: $%.2f", output)); 

Как сделать это так, что если кто-то входит отрицательное число сообщение всплывет говоря недопустимый ввод?только принимать неотрицательные числа Java

+1

'если (число <0) {показать сообщение}' – Guy

+0

Используйте время цикла? – khelwood

+0

Когда я использую оператор if, например if (input <0), программа не примет его. Может ли кто-нибудь объяснить? – jkjk

ответ

0

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

BigDecimal aa = null; 
try { 
    aa = new BigDecimal(input); 
} catch (NumberFormatException nfe) { 
    //Not a numerical value, throw an error 
} 
if (aa.compareTo(BigDecimal.ZERO) <= 0) { 
    //Value is negative 
} 
+0

Он говорит, что для использования BigDecimal мне нужно импортировать java.math. Дело в том, что мне не разрешено – jkjk

+0

@jkjk, почему бы и нет? Вам разрешено импортировать классы из пакета swing, когда вы используете 'JOptionPane'. – mohammedkhan

+0

Я имею в виду, что мой учитель не позволяет. Я не знаю, почему и с ним нет споров. – jkjk

Смежные вопросы