String类型小数值转为Long类型
数值分为小数和整数,当传入的类型为String,需要获取的类型为Long,这时候直接通过Long.valueOf()可以实现,但是当传入的String类型是小数值得时候(如传入的是金额数值:"29.90",注意:金额数值经常进行乘以100后再往下执行业务逻辑:)就会出现
异常java.lang.NumberFormatException: For input string: "29.90"
解决方案如下
对于多位小数的数值转化为long的时候需要先将其进行转换成整数过渡处理
String orderAmount = "29.90"; Number num = Float.parseFloat(orderAmount)*100; int oamount = num.intValue(); long _cost = Long.valueOf(oamount);
String类型转int,转long
String str1 = "123"; String str2 = "123.0";
不带小数:可直接可转为int
int a = Integer.parseInt(str);
带小数,直接转为int会报数字格式化异常,需要先转为double,后转为int
转int
int b = (int)Double.parseDouble(str);
转long
long c = (long)(Double.parseDouble(str));
以上为个人经验,希望能给大家一个参考,也希望大家多多支持自学编程网。
- 本文固定链接: https://zxbcw.cn/post/221707/
- 转载请注明:必须在正文中标注并保留原文链接
- QQ群: PHP高手阵营官方总群(344148542)
- QQ群: Yii2.0开发(304864863)