int i = Integer.parseInt(s); 问题
class FloatDemo
{
public static void main(String args[])
{
try
{
Float f = Float.valueOf( "12 ");
String s = f.toString();
int i = Integer.parseInt(s);
System.out.println( "i : "+i);
}
catch (Exception e)
{
System.out.println( "bobo: ");
}
}
}
这里为什么会输出异常的结果
int i = Integer.parseInt(s);
这句去掉就会输出 正常结果;
parseInt不是说是将字符串参数作为有符号的十进制整数进行解析。
那为什么结果是这样得
------解决方案--------------------s是12.0吧~~这个好象变不了整形呀,有个 ". "
------解决方案--------------------因为s=12.0,其并不是一个整数字符串,应该用Float.parseFloat(s)
------解决方案--------------------s可能是 "12.0001 "之类的字符串
------解决方案--------------------你用System.out.println(s);输出这个字符串得知是:12.0 转化不成功