多语言展示
当前在线:1493今日阅读:168今日分享:49

Java如何将数据库中字符串字段转换成小数展示

在项目开发过程中,可能遇到不能满足条件的数据库表字段。当数据库中存储的某个字段为varchar或varchar2时,而页面需要展示的是保留两位的小数,这该怎么办呢?首先,将数据库中的数据查询出来后,将字符串数据转换成数值,并保留两位小数,再转换成字符串,返回到页面中展示。下面利用一个实例说明如何将数据库中的额字符串转换成小数,操作如下:
工具/原料
1

Eclipse

2

PC机

3

windows7

4

JDK

5

Tomcat

6

截图工具

方法/步骤
1

第一步,双击打开Eclipse,并新建一个Java类“DataFormatter.java”,如下图所示:

2

第二步,接着,在main主函数外创建一个static方法/** * 数据库中的字段为字符串,需要将字符串转换为数值, * 并将数值保留两位小数,并最终转换为字符串 * @param dbField * @return */ public static String formatterDecimal(String dbField) {       //将字符串强制转换成double类型      double number = Double.parseDouble(dbField);      //将number转换为BigDecimal,并保留两位小数,四舍五入      BigDecimal bigNum = new BigDecimal(number).setScale(2,                   BigDecimal.ROUND_HALF_UP);      //将bigNum转换成字符串      String numberStr = bigNum.toString();      //返回字符串结果      return numberStr; }如下图所示:

4

第四步,这是打印的结果打印结果:1.10如下图所示:

5

第五步,如果方法中的参数dbField为空字符串或者为null,将会报错,如下所示:Exception in thread 'main' java.lang.NumberFormatException: empty String at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1020) at java.lang.Double.parseDouble(Double.java:540) at com.you.util.DataFormatter.formatterDecimal(DataFormatter.java:30) at com.you.util.DataFormatter.main(DataFormatter.java:46)

6

第六步,解决上述错误,可以在static方法中,添加一个判断/** * 判断dbField为空字符串或null */ if(dbField == '' || dbField == null) {      return ''; }如下图所示:

注意事项
1

注意static方法中的参数是否为空

2

引用该方法时,注意用DataFormatter.formatterDecimal(参数)

推荐信息