`
OracleX
  • 浏览: 121184 次
  • 性别: Icon_minigender_1
  • 来自: 地球
社区版块
存档分类
最新评论

String(百分比)转换成BIgDecimal类型

    博客分类:
  • J2SE
阅读更多

保存投资比例时出现问题,获得的是个String类型的,比如:54.3300%,但数据库中是BigDecimal类型。直接进行转换

BigDecimal.valueOf(Long.valueOf(s))会抛异常:”Exception in thread "main java.lang.NumberFormatException: For input string: “。也就是先转换成Long的做法不行,最后发现先转换成Double就没问题。

                String s="42.3100%";
		s=s.substring(0, s.length()-1);  //去掉“%”
		System.out.println("s="+s);      
		double d=Double.valueOf(s);
		BigDecimal b=BigDecimal.valueOf(d);
		System.out.println("b="+b);

输出结果是:

s=42.310
b=42.31
 

 

但现在还是不知道为什么不能直接转换成Long,难道Long的大小不能满足要求,还请高手解答

0
2
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics