线程主错误java.lang.numberformat.exception中的异常

时间:2013-09-26 15:18:36

标签: ioexception

我是java的初学者。你可以告诉我这里有什么问题。它正在编译,但我无法执行。

import java.io.*;

class rect
{
public static void main(String args[]) throws IOException
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
int length,width,area;
length=Integer.parseInt(br.readLine());
width=Integer.parseInt(br.readLine());
area=length*width;
System.out.println("area"+area);

}


}

错误:线程主错误java.lang.numberformat.exception中的异常:5 10

2 个答案:

答案 0 :(得分:0)

该程序很好,但您似乎以错误的方式使用它。从例外情况来看,您在控制台上输入了5 10 lengthwidth的值,但这两个变量都尝试解析整个输入。也就是说,读取输入行10 5并且length=Integer.parseInt(br.readLine());尝试将此行解析为一个整数,该数字失败。

相反,您应该分别输入两个数字:10<enter>5<enter>;那就行了。

或者,您可以在一行中输入两个数字,然后使用String.split将行分成两个字符串,然后可以将这两个字符串解析为整数。

String[] numbers = br.readLine().split(" ");
length = Integer.parseInt(numbers[0]);
width  = Integer.parseInt(numbers[1]);

答案 1 :(得分:0)

输入不是无法解析的数字。

5 10之间有空格。

相关问题