好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

使用String类型小数值转换为Long类型

String类型小数值转为Long类型

数值分为小数和整数,当传入的类型为String,需要获取的类型为Long,这时候直接通过Long.valueOf()可以实现,但是当传入的String类型是小数值得时候(如传入的是金额数值:"29.90",注意:金额数值经常进行乘以100后再往下执行业务逻辑:)就会出现

异常java.lang.NumberFormatException: For input string: "29.90"

解决方案如下

对于多位小数的数值转化为long的时候需要先将其进行转换成整数过渡处理

?

1

2

3

4

String orderAmount = "29.90" ;

Number num = Float.parseFloat(orderAmount)* 100 ;

int oamount = num.intValue();

long _cost = Long.valueOf(oamount);

String类型转int,转long

?

1

2

String str1 = "123" ;

String str2 = "123.0" ;

不带小数:可直接可转为int

?

1

int a = Integer.parseInt(str);

带小数,直接转为int会报数字格式化异常,需要先转为double,后转为int

转int

?

1

int b = ( int )Double.parseDouble(str);

转long

?

1

long c = ( long )(Double.parseDouble(str));

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

原文链接:https://blog.csdn.net/u012669002/article/details/83061401

查看更多关于使用String类型小数值转换为Long类型的详细内容...

  阅读:27次