String转为long 类型报错原因:要转为long必须是int、double、float型[通俗易懂]

遇到该问题的解决办法一:StringstrTime="12.5416132";doubledblTime=Double.parseDouble(strTime); longlngTime=newDouble(dblTime).longValue();log.info("lngTime:"+lngTime);具体报错原因请看下面的例子和解释:上例子:stringa=…

大家好,又见面了,我是你们的朋友全栈君。

遇到该问题的解决办法一:

String strTime = "12.5416132";
double dblTime = Double.parseDouble(strTime);
		
long lngTime = new Double(dblTime).longValue();
log.info("lngTime:"+lngTime);

具体报错原因请看下面的例子和解释:

上例子:

string a =100.1;

long b=long.parse(a);

转换时报 “输入字符串的格式不正确”

当a =100.0 时

long b=long.parse(a,NumberStyles.AllowDecimalPoint);

可以正常转换,

而 a=100.9 时

long b=long.parse(a,NumberStyles.AllowDecimalPoint);

转换失败,报超过Int64的最大值或最小值,

原因解释:

问题一:long是整形也就是Int64类型,parse的对象必须是整形

问题二:

当a =100.0 时

long b=long.parse(a,NumberStyles.AllowDecimalPoint);

这是因为用了NumberStyles.AllowDecimalPoint

指示数字字符串可以具有小数点。 如果 NumberStyles 值包括 AllowCurrencySymbol 标志,分析的字符串包括货币符号,则小数分隔符字符由 NumberFormatInfo. CurrencyDecimalSeparator 属性确定。否则,小数分隔符由 NumberFormatInfo. NumberDecimalSeparator 属性来确定。

实际上是允许有小数点的出现,但作为long,还是不能parse非整数,此时的a是100.00,是可以丢去小数点作为整数的。也就是说long在parse的时候是默认把a处理后当成100来parse的。

问题三:

此时的a变成100.1,同样使用了NumberStyles.AllowDecimalPoint,但这时候long所parse的不再是一个整数,所以会提出异常,超过int64也就是long的范围,对于这个错误,可以先把a=100.1做一个转换变成整形,或者使用范围更广的double或decimal来parse,如decimal.Parse("100.1", NumberStyles.AllowDecimalPoint)

例子和解释来源于点击打开链接

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128601.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 苹果手机识别图片文字方法「建议收藏」

    苹果手机识别图片文字方法「建议收藏」识别图片文字的问题相信很多的小伙伴都是经历过的,一般遇到识别图片文字的问题,相信很多人都选择了用电脑打字进行转换,其实还有比这简单一下的方法吗,比如手机可以直接把图片文字识别出来,一起来看看操作方法吧。操作方法:1.先将需要进行文字识别的图片保存在手机里,然后在应用市场里找到OCR文字识别。2.将其运行在文字识别的页面有图片识别和拍照识别,在此选择图片识别。 3.这时会…

    2022年4月30日
    231
  • ds什么意思_小店源码

    ds什么意思_小店源码介绍:云铺购最新Ds网系统无后门全开源可运营版本控制端功能支持一键通秒搭建Ds网站点,一键新增修改站点版本,支持QQ一键通登录自主添加站点域名管理站点,可配置后台安全访问域名白名单IP(实时保护)控制端支持一键备份旗下所有站点数据,共享数据版大大减少服务器压力主站点功能前后台支持QQ一键通登录,前台风格8套内页风格3套,免密支付,订单代付自定义网站公告导航,等级配置,邮箱配置,密匙配置,站点一键通装修支持一键通秒对接云铺购系统,玖伍系统,亿乐系统,各大卡盟系统,网商系统等对接商品价格支持

    2022年8月13日
    5
  • 惠普台式电脑如何安装系统_hp服务器快速重装系统

    惠普台式电脑如何安装系统_hp服务器快速重装系统惠普在计算机行业是一个很有声誉的品牌,无论是台式机还是笔记本,惠普都是一款值得考虑和购买的品牌产品之一。但是当计算机系统出了问题需要重装系统时,很多人并不知道如何进行系统的重装,那么惠普的台式机如何进行重装系统呢?今天小编将为大家介绍惠普台式电脑装系统步骤。惠普台式电脑装系统步骤阅读1、打开浏览器搜索云骑士官网,找到云骑士官网并点击打开。2、在官网下载云骑士一键重装系统软件,下载后打开云骑士装机大…

    2022年8月13日
    3
  • git push 报错处理 ! [rejected] master -> master (non-fast-forward)

    git push 报错处理 ! [rejected] master -> master (non-fast-forward)

    2021年5月12日
    116
  • 32H7_海马s5近光可以直接换H7吗

    32H7_海马s5近光可以直接换H7吗完整版教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=94547第16章DSP功能函数-数据拷贝,数据填充和浮点转定点本期教程主要讲解功能函数中的数据拷贝,数据填充和浮点数转换为定点数。目录第16章DSP功能函数-数据拷贝,数据填充和浮点转定点16.1初学者重要提示16….

    2025年9月28日
    2
  • 三极管开关电路[通俗易懂]

    三极管开关电路[通俗易懂]模拟电路三极管不仅可以对模拟信号放大,也可作为控制开关使用,作为开关使用的三极管处于截止与饱和状态,其基本电路如下图所示:其中,集电极电阻R1为上拉电阻,当三极管Q1截止时将输出电压上拉至电源VCC(高电平),可以理解为开集(OC)输出结构的上拉电阻,具体可参考文章《电阻(4)之上/下拉电阻》,基极串联电阻R2为限流电阻,防止输入电压Vi幅值过高导致基极电流超额而损坏三极管,下拉电阻R…

    2022年9月21日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号