【JAVA工具类】金额与汉字大小写的转换 金额转换

主要实现金额与汉字大小写的转换 金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)->(一 千零一拾一元整)输出。 去零的代码:

 

 

/********************************************
 * 系统名称:  
 * 模块名称: TODO
 * 软件版权: 马琳-君子自强,脚踏实地积累
 * 源程序名:MoneyConvert.java
 * 功能说明: 
 * 开发人员: 马琳-君子自强,脚踏实地积累
 * 开发时间: 2019年5月8日 上午10:41:16
 * 审核人员:
 * 相关文档:
 * 修改记录: 修改日期    修改人员    修改说明
 * v1.0.0.0 2019年5月8日-01 马琳 TODO   
 *******************************************/

package com.web;

/**
 * 功能说明:主要实现金额与汉字大小写的转换 金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)->(一 千零一拾一元整)输出。 去零的代码:
 * 
 * @date 2019年5月8日
 * @author 马琳-君子自强,脚踏实地积累
 * @email 1217575485@qq.com
 * 
 */
public class MoneyConvert {

	private static final char[] data = new char[] { '零', '壹', '贰', '叁', '肆','伍', '陆', '柒', '捌', '玖' };
	private static final char[] units = new char[] { '元', '拾', '佰', '仟', '万','拾', '佰', '仟', '亿' };

	public static void main(String[] args) {
		System.out.println(convert(135689123));

	}

	public static String convert(int money) {
		StringBuffer sbf = new StringBuffer();  //线程安全
		int unit = 0;
		while (money != 0) {
			sbf.insert(0, units[unit++]);//插入  char  字节  然后synchronized  确保多线程安全
			int number = money % 10;
			sbf.insert(0, data[number]);
			money /= 10;
		}

		return sbf.toString();
	}
}
/***
 * 运行结果显示:
 * 壹亿叁仟伍佰陆拾捌万玖仟壹佰贰拾叁元
 */


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苦思冥想行则将至

穷,有钱的大爷上个两分钱吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值