当前位置: 代码迷 >> J2EE >> 算法:输入数字,将其转换为中文。该如何解决
  详细解决方案

算法:输入数字,将其转换为中文。该如何解决

热度:126   发布时间:2016-04-22 02:49:11.0
算法:输入数字,将其转换为中文。
Java code
private static final String[] digits = new String[]{" 零", "壹", "贰", "叁",            "肆", "伍", "陆", "柒", "捌", "玖"};private static final String[] radices = new String[]{"", "拾", "佰", "仟"};private static final String[] bigRadices = new String[]{"", "万", "亿", "万"};   /**     * 算法:输入数字,将其转换为中文。     *      * @param num     *            数字字符串     * @return 转换结果(中文)     */    public static String covnt(String num)    {        String integral = num; // 整数部分        String outputCharacters = ""; // 最终转换输出结果        String d = null;        int zeroCount = 0, p = 0, quotient = 0, modulus = 0;        for (int i = 0; i < integral.length(); i++)        {            p = integral.length() - i - 1;            d = integral.substring(i, i + 1);            quotient = p / 4;            modulus = p % 4;            if (d.equals("0"))            {                zeroCount++;            }            else            {                if (zeroCount > 0)                {                    outputCharacters += digits[0];                }                zeroCount = 0;                outputCharacters += digits[Integer.parseInt(d)]                        + radices[modulus];            }            if (modulus == 0 && zeroCount < 4)            {                outputCharacters += bigRadices[quotient];            }        }        return outputCharacters;    }


------解决方案--------------------
楼主能简单介绍下你想干什么吗 不要只是贴代码
------解决方案--------------------
想炫一下自己的代码吧~
------解决方案--------------------
这个转换的算法网上满天飞了
曾经也写过好几个,LZ可以搜以前的帖子
  相关解决方案