50字范文,内容丰富有趣,生活中的好帮手!
50字范文 > java中数字格式金额转换成中文大写金额工具类

java中数字格式金额转换成中文大写金额工具类

时间:2019-12-10 22:11:50

相关推荐

java中数字格式金额转换成中文大写金额工具类

/*** 金额转换工具类*/public class MoneyUtils {private static final String UNIT = "万千佰拾亿千佰拾万千佰拾元角分";private static final String DIGIT = "零壹贰叁肆伍陆柒捌玖";private static final double MAX_VALUE = 9999999999999.99D;public static String change(double v) {if (v < 0 || v > MAX_VALUE){return "参数非法!";}long l = Math.round(v * 100);if (l == 0){return "零元整";}String strValue = l + "";// i用来控制数int i = 0;// j用来控制单位int j = UNIT.length() - strValue.length();String rs = "";boolean isZero = false;for (; i < strValue.length(); i++, j++) {char ch = strValue.charAt(i);if (ch == '0') {isZero = true;if (UNIT.charAt(j) == '亿' || UNIT.charAt(j) == '万' || UNIT.charAt(j) == '元') {rs = rs + UNIT.charAt(j);isZero = false;}} else {if (isZero) {rs = rs + "零";isZero = false;}rs = rs + DIGIT.charAt(ch - '0') + UNIT.charAt(j);}}if (!rs.endsWith("分")) {rs = rs + "整";}rs = rs.replaceAll("亿万", "亿");return rs;}public static void main(String[] args){System.out.println(MoneyUtils.change(12356789.9845));}}

业务需求要用到此工具类,百度到的,分享一下,并在下方附上原文链接。

原文链接:/niuyaoBolg/p/5654113.html

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。