Android Kotlin中Bundle内字符串转数字异常
2020-02-18 本文已影响0人
周_0717
调用Bundle内的getInt、getDouble等方法时,实际为调用内部Map的get方法,若值为null,返回默认值,否则将值强转为对应类型,失败则返回默认值。
在kotlin时,Map中获得的值如果不是数字类型,则强转一定失败,永远都返回默认值。解决如下:bundle.get("name")?.toString()?.toInt() ?:0
同理,其他情况也可能出现强转失败的问题。