最新消息:文章中包含代码时,请遵守代码高亮规范!

金额数字字符串规范格式化【原创】

Android Joy 2279浏览 0评论

在程序开发中,有些地方需要显示金额,比如账户余额。涉及到数字较大的可能我们一眼看不出来这是多少钱,当然对于我们账户余额不超过三位数的屌丝来说毫不影响,但是为了美观和规范,我们要对金额数字进行规范的格式化,对于整数部分的金额,从最后一位起,对每四位数字前面加上一个逗号。先来看一下没有格式化的金额数字,你能一眼看出来这是多少钱吗?再来一个格式化完成的金额数字,大家对比一下。

未格式化的:

w

 

 

 

格式化好的:

ww

 

 

 

接下来我们就要对这个数字进行规范的格式化了,首先我们对这个字符串根据小数点进行分割,因为我们只需要对小数点前面的整数金额进行格式化。

String str="199495275.90";
String [] strs = str.split("[.]");
就可以得到数组 strs[0] = "199495275"; strs[1] = "90";

接下来写一个函数,形参类型为String。

 
//对数字字符串,每四个数字加上逗号
 private static String addComma(String str) {
 String reverseStr = new StringBuilder(str).reverse().toString();
 String strTemp = "";
 for (int i = 0; i < reverseStr.length(); i++) {
 if (i * 4 + 4 > reverseStr.length()) {
 strTemp += reverseStr.substring(i * 4, reverseStr.length());
 break;
 }
 strTemp += reverseStr.substring(i * 4, i * 4 + 4) + ",";
 }
 // 将[789,456,] 中最后一个[,]去除
 if (strTemp.endsWith(",")) {
 strTemp = strTemp.substring(0, strTemp.length() - 1);
 }
 // 将数字重新反转
 String resultStr = new StringBuilder(strTemp).reverse().toString();
 return resultStr;
 }

接下来,我们就可以调用了。

String money = addComma(strs[0]) + "." + strs[1] + "元" = "1,9949,5275.90元";

 

转载时请注明出处及相应链接,本文永久地址:https://blog.yayuanzi.com/14975.html


pay_weixin
pay_weixin
微信打赏
pay_weixin
支付宝打赏
感谢您对作者Joy的打赏,我们会更加努力!    如果您想成为作者,请点我

您必须 登录 才能发表评论!