这个程序编译没错,但运行出错请各位高手帮我看看错在那里?

import java.io.*;
import java.lang.*;
class Score
{
public static void main(String[] args)throws IOException
{ints;int i;
System.out.println("请你输入分数并按回车查询!");
s=(int)System.in.read(); System.in.skip(2);
i=Integer.parseInt("s",10);
switch(s<60?1: s<70?2: s<80?3: s<90? 4:5){
case 1:
System.out.println("你的等级为:E"+s);break;

case 2:
System.out.println("你的等级为D:"+s);break;

case 3:
System.out.println("你的等级为C:"+s);break;
case 4:
System.out.println("你的等级为B:"+s);break;
default:

System.out.println("你的等级为A"+s);
}
}
}
编译后,当我按入数字进行调试就会报错,界面是:
g:\7java Score
请你输入分数并按回车查询!
88
exception in thread "main" java.lang.numberformatexception:for input string:"i"
atjava.lang.nuberformatexception.forinputstring<nuberformatexception.java:48>
at java.lang.integer.parseint<integer.java:447>
at score.main<score.java:9>

i=Integer.parseInt("s",10);
改为:
i=Integer.parseInt(""+s+"",10);

另: Integer.parseInt()使用需多加注意
温馨提示:内容为网友见解,仅供参考
第1个回答  2007-10-12
是不是越界了
数据不符合类型??
相似回答