String text=input.readLine();
这里读出来的不符合数字格式int a=new Integer(text).intValue();
所以这里数据转换出错

解决方案 »

  1.   

    还要throw 吖....
    谁来接吖...
    2 3 4
    这个不能转换为数字型.
      

  2.   

    使用 text.trim()可以过滤字符串头和尾部的空格。
    不过看你的情况最重要的是要在转换前进行检查,如果字符串中包含非数字字符,
    就会抛出NUMBERFORMATEXCEPTION。
    如果不检查就使用TRY CATCH把NUMBERFORMATEXCEPTION异常处理掉,
    还有,建议你使用Integer.parseInt(String s)方法来格式化字符串。
    虽然结果一样,不过应该是一个比较好的习惯。
      

  3.   

    一样的,我用的是VisualAge for java,但是都会弹出个错误调试器,请问swinging谢谢你的帮助,但是我还是有一点看不懂,那本中国青年出版社的JAVA完全探索里面都没有提到。所以能不能把
    具体的程序告诉我,本人十分感谢。
      

  4.   

    public class test{
        public static void main(String args[]){
              if(args.length <= 3){
                   System.err.println("Usage Error:you must input three numbers!");
              }
              Integer[] values = new Integer[3];
              for(int i = 0;i < args.length;i ++){
                   values[i] = new Integer(args[i]);
              }          for(int i = 0;i < values.length;i ++){
                   System.out.println(values[i]);
              }
        }
    }
    不知符合题意否?
      

  5.   

    你的意思是在调用的时候输入三个数据,然后分别存入args当中,然后又用一个循环把数据转换并存入数组中吗?但是我把程序运行一下,他会显示null,好像是说数组还没有定义.
      

  6.   

    args是命令行参数,和你的输入是无关的