首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Exception >

java.lang.NumberFormatException: For input string: I love you!!!

2014-01-26 
public class TryCatchDemo{ public static void main(String[] args){ String s1I love you!!! double

public class TryCatchDemo{
public static void main(String[] args){
String s1="I love you!!!";
double d1=0;
try{
//执行转换操作,如果s1变量为字符串将产生一个异常
d1=Double.parseDouble(s1);
System.out.println("转换成功,s1变量是数字,等于"+d1);
}//end try
catch(Exception e){
//返回错误值
System.out.println("转换失败,s1变量是文字,等于"+d1);
e.printStackTrace();
}//end catch
finally{
//不管发生什么事情,下面的都会执行输出来
System.out.println("i love you!!!");
}//end finally
}//end main
}//end ExceptionFile
程序运行结果如下,这是出现异常的输出情况
能否帮忙好好解释一下吗/

D:\JavaProgramming>javac TryCatchDemo.java

D:\JavaProgramming>java TryCatchDemo
转换失败,s1变量是文字,等于0.0
java.lang.NumberFormatException: For input string: "I love you!!!"
at java.lang.NumberFormatException.forInputString(NumberFormatException.
java:48)
at java.lang.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1
213)
at java.lang.Double.parseDouble(Double.java:202)
at TryCatchDemo.main(TryCatchDemo.java:7)
i love you!!!
 

------解决方法--------------------------------------------------------
s1 = "I love you!!!";不是double型,所以d1=Double.parseDouble(s1);出现NumberFormatException异常。finally最后都会执行System.out.println("i love you!!!");
。所以输出i love you!!!

你泡MM啊,程序真e

------解决方法--------------------------------------------------------
看一下Class Double 的 parseDouble(String str) 就明白了;

/**
* Returns a new <code>double</code> initialized to the value
* represented by the specified <code>String</code>, as performed
* by the <code>valueOf</code> method of class
* <code>Double</code>.         

热点排行