如题,工作中会遇到 android gson 解析整型到字符串变浮点型的情况,这个时候,你就需要一个方法来控制要显示整型还是浮点型
import java.math.BigDecimal
object NumberHelper {
fun parse(str: String): Number {
val number: Number = try {
str.toFloat()
} catch (e: NumberFormatException) {
try {
str.toDouble()
} catch (e1: NumberFormatException) {
try {
str.toInt()
} catch (e2: NumberFormatException) {
try {
str.toLong()
} catch (e3: NumberFormatException) {
throw e3
}
}
}
}
return number
}
/**
* 获取一位小数浮点数
*/
fun getOneDotFloat(num:Double):Float {
val bg = BigDecimal(num)
return bg.setScale(1,BigDecimal.ROUND_HALF_UP).toFloat()
}
}
使用方法
显示整型
NumberHelper.parse(packCount).toInt()
显示浮点型
NumberHelper.parse(pics).toFloat()