jcreator enter и numberformatexception
Добрый день, сейчас мне нужна помощь. Проблема в том, что, я перешел на новую среду разработки, которая является JCreator, у меня проблемы с вводом моей программы.
Программа проста, ей просто нужно хранить два ввода целых чисел для двух разных переменных, программа работает без исключений, если я выполняю ее в других средах разработки и командной строке, но в JCreator есть исключение, которое возникает всякий раз, когда я введите второй номер
Мне нужна помощь, я не могу переключать IDE по личным причинам, я пытался использовать метод trim(), но исключение все равно происходит, что мне делать?
Заранее спасибо и больше силы
import java.io.*;
public class InputError{
public static void main(String [] args)throws IOException{
BufferedReader x = new BufferedReader(new InputStreamReader(System.in));
int firstNumber = Integer.parseInt(x.readLine());
int secondNumber = Integer.parseInt(x.readLine());
}
}
Исключительная часть:
--------------------Configuration: TrialAgain - JDK version 1.8.0_66 <Default> - <Default>--------------------
1
19
Exception in thread "main" java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:592)
at java.lang.Integer.parseInt(Integer.java:615)
at InputError.main(InputError.java:8)
Process completed.
2 ответа
По какой-то причине JCreator получает дополнительный ввод из буфера. Одним из решений является печать дополнительной строки сразу после readLine().
BufferedReader x = new BufferedReader(new InputStreamReader(System.in));
String s = x.readLine();
System.out.println();
int firstNumber = Integer.parseInt(s);
s = x.readLine();
System.out.println();
int secondNumber = Integer.parseInt(s);
ПЫТАТЬСЯ:
import javax.swing.*;
public class InputError{
public static void main(String [] args){
string B = JOptionPane.showInputDialog("first number");
int b=Integer.parseInt(B);
string A = JOptionPane.showInputDialog("second number");
int a= Integer.parseInt(A);
}
}