把 数字 转换成 人民币表达方式 例如(1111)转成 “一千一百一拾一元整”
/** * 把 数字 转换成 人民币表达方式 * 例如(1111)转成 “一千一百一拾一元整” */ public class Test02 { private static final char[] data = { \'零\', \'壹\', \'贰\', \'叄\', \'肆\', \'伍\', \'陆\', \'柒\', \'捌\', \'玖\' }; private static final char[] units = { \'元\', \'拾\', \'佰\', \'仟\', \'万\', \'拾\', \'佰\', \'仟\', \'亿\' }; public String convert(int money) { StringBuffer sbf = new StringBuffer(); int uint = 0; while (money != 0) { sbf.insert(0, units[uint++]); sbf.insert(0, data[money % 10]); money = money / 10; } // 去零 return sbf.toString().replaceAll("零[拾佰仟]", "零").replaceAll("零+万", "万") .replaceAll("零+元", "元").replaceAll("零+", "零"); } public static void main(String[] args) { Test02 rmb = new Test02(); System.out.println(rmb.convert(1111)); // 输出壹仟零壹拾壹元 } }