package com.artfess.base.util; /** * 数字转换中文 * * @author huangshuai * @date 2019/11/22 0022 */ public class ConvertUtil { static final String[] num = {"零", "一", "二", "三", "四", "五", "六", "七", "八", "九"}; static final String[] unit = {"", "十", "百", "千", "万", "十", "百", "千", "亿", "十", "百", "千"}; private static dm.jdbc.util.ConvertUtil instance ; private ConvertUtil(){} public static synchronized dm.jdbc.util.ConvertUtil getInstance() { if (instance == null) { instance = new dm.jdbc.util.ConvertUtil(); } return instance; } public static String intToChineseNum(Integer intNum) { intNum = intNum == null ? 0 : intNum; StringBuilder dst = new StringBuilder(); int count = 0; if(intNum >= 10 && intNum < 20){ dst.append("十"); dst.append(num[intNum % 10]); }else{ while(intNum > 0) { dst.insert(0, (num[intNum % 10] + unit[count])); intNum = intNum / 10; count++; } } return dst.toString().replaceAll("零[千百十]", "零").replaceAll("零+万", "万") .replaceAll("零+亿", "亿").replaceAll("亿万", "亿零") .replaceAll("零+", "零").replaceAll("零$", ""); } public static void main(String[] args) { String s = intToChineseNum(1); System.out.println(s); } }