java invalid double_java.lang.NumberFormatException: Invalid double: "

标签:

ad19c157adc42b3e99c91a6b1460d382.png

以上是报错信息:

6c1633a3cc1092e260645face9138d71.png

首先是第一个出错地址:只是在文本框的值被改变后,把String转化成double类型。代码是无误的。分析原因:那么说明接收的时候是空值,必然不能转换成double.

b188542975f4757a08cb3000e4523a5e.png

接着找到第二个出错地址:当变量<12的时候会Toast提示,并把文本框清空(设为空值)。

分析原因:这下恍然大悟,之前在EditText中只要输入12就会出现本文中的错误(并没有按照代码逻辑会有toast提示弹出)

现在改为输入13则bug消失。

最后总结:由于我在文本框条件的时候,是配套使用的焦点监听和文本改变监听器,代码前部分是在焦点监听中判断条件、控制用户输入,代码后部分文本改变监听器中进行传值、数值转换。

我暂且可以认为代码逻辑是无误的。

焦点监听器中:当输入数值为12,则不满足条件,(应该要弹出Toast但是并没有),接着EditText的Text文本被设定为空字符串。

文本改变监听器中:用变量beed获取EditText中的字符串值(由于是空值),此时即出现本文中的报错信息。

(本人新手,实习一月,越来越觉得学习Debug和看logcat信息确实是非常重要,期待自己能有更多收获。)

(文中纯属个人观点,欢迎大神老鸟们批评指正,虽然问题解决了,不过Toast没有弹出,我仍然不理解)

标签:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值