我写的程序:
                  tf_age = new JTextField();
String ag = tf_age.getText();
if(ag.trim()!=""){
 age = Integer.parseInt(ag);
}else{
age=-1;
}
tf_age.setBounds(111, 257, 112, 18);
getContentPane().add(tf_age);但会报错:java.lang.NumberFormatException: For input string: ""不知是什么原因?应该怎样写才对?

解决方案 »

  1.   

    1.字符串比较不能用 == 或!=
    2.对于错误的输入,最好还是考虑全面一点建议:
    1.给你的JTextField设置一个Document以实现输入过滤,只能输入数字
    2.对于获得的输入内容,进行trim(),然后parseInt,对代码进行try-catch,如果捕获到异常,那么使用缺省值-1
    try{
       age=Integer.parseInt(ag.trim());
    }catch(Exception e){
       age=-1;
    }
      

  2.   

    ag.trim()!=""改成!"".equals(ag.trim())
      

  3.   

    字符串不要用==或者!=
    要用equals或者!equals