我正在 java 中执行我的代码,但每次都会收到数字异常错误。请帮忙
class TestClass {
public static void main(String args[]) throws IOException {
BufferedReader inp = new BufferedReader (new InputStreamReader(System.in));
String input = inp.readLine();
//Scanner sc = new Scanner(System.in);
StringTokenizer stk = new StringTokenizer(input);
int n = Integer.parseInt(stk.nextToken());
int q = Integer.parseInt(stk.nextToken());
int [] arr = new int[n];
int [] st = new int [n];
for(int i =0;i<n;i++){
arr[i] = Integer.parseInt(stk.nextToken());
st[i] = fib(arr[i]);
}
while(q>0){
int l = Integer.parseInt(stk.nextToken());
int r = Integer.parseInt(stk.nextToken());
System.out.println(gcd(st,l,r));
q--;
}
我不断收到错误消息:
Exception in thread "main" java.lang.NumberFormatException: For input string: "3 2" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Integer.parseInt(Integer.java:580) at java.lang.Integer.parseInt(Integer.java:615) at TestClass.main(Main.java:14)
最佳答案
尝试使用 split 方法代替:
而不是:
StringTokenizer stk = new StringTokenizer(input);
int n = Integer.parseInt(stk.nextToken());
int q = Integer.parseInt(stk.nextToken());
用途:
String in[] = input.split("");
int n = Integer.parseInt(in[0]);
int q = Integer.parseInt(in[1]);
关于java - 线程中的异常 "main"java.lang.NumberFormatException :,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44470847/