java 数字转中文数字

少年们,拷贝拿去用吧,对零做处理了!

原文链接:https://www.iteye.com/blog/1017401036-2305493  

我对零做了处理 例如:1000500 ==> 一百万零五百

你们直接调用 该方法:

public String formatInteger(int num) {  
		String[] units = {"","十","百","千","万","十万","百万","千万","亿","十亿","百亿","千亿","万亿" };  
		char[] numArray = {'零','一','二','三','四','五','六','七','八','九'};  
		
		char[] val = String.valueOf(num).toCharArray();  
		int len = val.length;  
		
		StringBuilder sb = new StringBuilder();  
		
		for (int i = 0; i < len; i++) {  
			
			String m = val[i] + "";  
			
			int n = Integer.valueOf(m);  
			
			boolean isZero = n == 0;  
			
			String unit = units[(len - 1) - i];  
			
			if (isZero) {  
				
				if ('0' == val[i - 1]) {  
					
					continue;  
					
				} else {  
					
					sb.append(numArray[n]);  
					
				}  
			} else {  
				
				sb.append(numArray[n]);  
				
				sb.append(unit);  
				
			}  
		}  

		String str = sb.toString();

		String substring = str.substring(str.length()-1, str.length());

		if(substring.equals("零")){
			str = str.substring(0, str.length()-1);
		}
		return str; 
	}  

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值