调用Bundle内的getInt、getDouble等方法时,实际为调用内部Map的get方法,若值为null,返回默认值,否则将值强转为对应类型,失败则返回默认值。
在kotlin时,Map中获得的值如果不是数字类型,则强转一定失败,永远都返回默认值。解决如下:bundle.get("name")?.toString()?.toInt() ?:0
同理,其他情况也可能出现强转失败的问题。
调用Bundle内的getInt、getDouble等方法时,实际为调用内部Map的get方法,若值为null,返回默认值,否则将值强转为对应类型,失败则返回默认值。
在kotlin时,Map中获得的值如果不是数字类型,则强转一定失败,永远都返回默认值。解决如下:bundle.get("name")?.toString()?.toInt() ?:0
同理,其他情况也可能出现强转失败的问题。
本文标题:Android Kotlin中Bundle内字符串转数字异常
本文链接:https://www.haomeiwen.com/subject/evywfhtx.html
网友评论