我有以下示例(指向 ideone 的链接)。
long lDurationMillis = 0;
lDurationMillis = Long.parseLong("30000.1");
System.out.print("Play Duration:" + lDurationMillis);
它抛出一个异常:
Exception in thread "main" java.lang.NumberFormatException: For input string: "30000.1"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Long.parseLong(Long.java:419)
at java.lang.Long.parseLong(Long.java:468)
at Main.main(Main.java:9)
但为什么它不允许我直接将该数字转换为字符串?我可以将数字转换为整数,而不是转换为双精度。但是还有其他方法吗?