金额转换

来源:互联网 发布:java迭代器的作用 编辑:程序博客网 时间:2024/05/09 11:59

题意描述:将阿拉伯数字的金额转换成中国文字描述的金额,如

(¥1011 )-> (一千零一拾一元整)输出


解题思路:“0-9”阿拉伯数字对应的中文文字分别为“'零','壹','贰','叁','肆','伍','陆','柒','捌','玖'”;中文描述金额时会有单位描述,如个位后面带“元”、十位后面带“拾”等等,并且有这样一个规律:个、十、百、千、万、十万、百万、千万、亿,所以分别将对应单位存放在数组中,然后依次取出:

public class MoneyConvert {private static final char[] data = new char[]{'零','壹','贰','叁','肆','伍','陆','柒','捌','玖'};private static final char[] units = new char[]{'元','拾','佰','仟','万','拾','佰','仟','亿'};private static String convert(int money) {StringBuffer str = new StringBuffer();int unit = 0;while(money != 0){str.insert(0, units[unit++]);int number = money%10;str.insert(0, data[number]);money /= 10;}return str.toString();}public static void main(String[] args) {System.out.println(convert(135689123));               //壹亿叁仟伍佰陆拾捌万玖仟壹佰贰拾叁元}}







0 0
原创粉丝点击