为了账号安全,请及时绑定邮箱和手机立即绑定

JAVA - 将字符串(带点)转换为 Long

JAVA - 将字符串(带点)转换为 Long

烙印99 2021-11-24 15:58:44
我有关于从字符串转换为长值的问题。例子 :String a = "4.0";Long l= Long.parseLong(a);当我执行时,得到异常:Exception in thread "main" java.lang.NumberFormatException: For input string: "4.0"at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)at java.lang.Long.parseLong(Long.java:589)at java.lang.Long.parseLong(Long.java:631)at com.tests.Test2.main(Test2.java:69)任何的想法?谢谢!
查看完整描述

3 回答

?
互换的青春

TA贡献1797条经验 获得超6个赞

4.0 不是一个长值 这是一个双倍,尝试 Double.parseDouble(a)


查看完整回答
反对 回复 2021-11-24
?
杨__羊羊

TA贡献1943条经验 获得超7个赞

您正试图将包含不受支持的字符 , 的字符串.转换为Long. 这不受https://docs.oracle.com/javase/7/docs/api/java/lang/Long.html#parseLong(java.lang.String)支持。尝试Long l = Double.valueOf(a).longValue();https://docs.oracle.com/javase/7/docs/api/java/lang/Double.html#valueOf(java.lang.String)

查看完整回答
反对 回复 2021-11-24
?
郎朗坤

TA贡献1921条经验 获得超9个赞

你也可以使用 Double.valueOf(a)

Double.parseDouble(String) 将返回一个原始的 double 类型。Double.valueOf(String) 将返回一个 Double 类型的包装对象。

根据您的需要,您可以使用上述之一


查看完整回答
反对 回复 2021-11-24
  • 3 回答
  • 0 关注
  • 322 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信