package com.zuidaima.test;

public class dataChangZh2 {
	/**
	 * 金额  转大写
	 * @param n
	 * @return
	 */
	public static String digitUppercase(double n){
	    String fraction[] = {"角", "分"};
	    String digit[] = { "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" };
	    String unit[][] = {{"元", "万", "亿"},{"", "拾", "佰", "仟"}};

	    String head = n < 0? "负": "";

	    n = Math.abs(n);

	    String s = "";

	    for (int i = 0; i < fraction.length; i++) {
	        s += (digit[(int)(Math.floor(n * 10 * Math.pow(10, i)) % 10)] + fraction[i]).replaceAll("(零.)+", "");
	    }

	    if(s.length()<1){
	        s = "整";   
	    }

	    int integerPart = (int)Math.floor(n);

	    for (int i = 0; i < unit[0].length && integerPart > 0; i++) {
	        String p ="";
	        
	        for (int j = 0; j < unit[1].length && n > 0; j++) {
	            p = digit[integerPart%10]+unit[1][j] + p;
	            integerPart = integerPart/10;
	        }

	        s = p.replaceAll("(零.)*零$", "").replaceAll("^$", "零") + unit[0][i] + s;
	    }

	    return head + s.replaceAll("(零.)*零元", "元").replaceFirst("(零.)+", "").replaceAll("(零.)+", "零").replaceAll("^整$", "零元整");
	}
	
	public static void main(String[] args) {
		//打印 我的 最代码 ID 
		System.out.println(digitUppercase(11829));
	}
}
最近下载更多
crosa_Don  LV18 2022年7月19日
skipple3  LV39 2019年8月29日
Args_zhw  LV3 2019年1月16日
fenghuijun  LV26 2016年1月24日
kong.yee  LV40 2015年11月3日
匡兴(秀泽)  LV28 2015年3月30日
已注销用户  LV34 2015年1月7日
watfgzs  LV21 2014年11月16日
JAVA_菜菜  LV15 2014年6月11日
xxx  LV11 2014年5月17日
最近浏览更多
fesfefe  LV13 2023年11月11日
EFWAGGFAWGR 2023年10月19日
暂无贡献等级
yuanmafx  LV4 2022年9月14日
crosa_Don  LV18 2022年7月19日
ls2008  LV15 2022年6月22日
123q45  LV1 2021年8月5日
xwq1234567  LV1 2021年6月15日
碰运气的绅士  LV1 2021年5月16日
lkcarry 2021年4月16日
暂无贡献等级
Gyq灬ming  LV11 2020年6月22日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友