怎样编写一个把数字10000转成中文数字一万的程序,用java

 我来答
小傻

2015-10-29 · 知道合伙人软件行家
小傻
知道合伙人软件行家
采纳数:11567 获赞数:31135
已经做过两个上架的app和两个网页项目.

向TA提问 私信TA
展开全部

编写一个把数字10000转成中文数字一万的程序,算法主要是使用字符串数组进行比较:

public class Test {
    public static void test(int d) {
//        String[] str = { "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" };
        String[] str = { "零", "一", "二", "三", "四", "五", "六", "七", "八", "九" };
//        String ss[] = new String[] { "元", "拾", "佰", "仟", "万", "拾", "佰", "仟", "亿" };
        String ss[] = new String[] { "个", "十", "百", "千", "万", "十", "百", "千", "亿" };
        String s = String.valueOf(d);
        System.out.println(s);
        StringBuffer sb = new StringBuffer();
        for (int i = 0; i < s.length(); i++) {
            String index = String.valueOf(s.charAt(i));
            sb = sb.append(str[Integer.parseInt(index)]);
        }
        String sss = String.valueOf(sb);
        int i = 0;
        for (int j = sss.length(); j > 0; j--) {
            sb = sb.insert(j, ss[i++]);
        }
        System.out.println(sb);
    }

    public static void main(String[] args) {
        test(3213);
        test(912321321);
    }
}
梦冷凝
2011-08-25 · TA获得超过1568个赞
知道小有建树答主
回答量:1703
采纳率:25%
帮助的人:741万
展开全部
这个是我写的啊楼主请尊重版权。选择正版
HashMap<String, String> maps = new HashMap<String, String>();
maps.put("0", "零");
maps.put("1", "一");
maps.put("2", "二");
maps.put("3", "三");
maps.put("4", "四");
maps.put("5", "五");
maps.put("6", "六");
maps.put("7", "七");
maps.put("8", "八");
maps.put("9", "九");

String[] str = {"","十","百","千","万"};
String st = "10000";
StringBuilder sb = new StringBuilder();
for (int i = 0; i < st.length(); i++) {
Character c = st.charAt(i);
String s = c.toString();
String hanZi = maps.get(s);
String danWei = str[st.length()-i-1];//数字后面的单位如万
if(s.equals("0")) {
sb.append(hanZi);
}else{
sb.append(hanZi+danWei);
}
}

System.out.println(sb.toString());
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d378c92e4
2011-08-25 · TA获得超过153个赞
知道答主
回答量:56
采纳率:0%
帮助的人:73.9万
展开全部
HashMap<String, String> maps = new HashMap<String, String>();
maps.put("0", "零");
maps.put("1", "一");
maps.put("2", "二");
maps.put("3", "三");
maps.put("4", "四");
maps.put("5", "五");
maps.put("6", "六");
maps.put("7", "七");
maps.put("8", "八");
maps.put("9", "九");

String[] str = {"","十","百","千","万"};
String st = "10000";
StringBuilder sb = new StringBuilder();
for (int i = 0; i < st.length(); i++) {
Character c = st.charAt(i);
String s = c.toString();
String hanZi = maps.get(s);
String danWei = str[st.length()-i-1];//数字后面的单位如万
if(s.equals("0")) {
sb.append(hanZi);
}else{
sb.append(hanZi+danWei);
}
}

System.out.println(sb.toString());
}

参考资料: http://zhidao.baidu.com/question/311323120.html

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-08-25
展开全部
int i = 10000;
String strI = null;
if(i = 10000){
strI = "一万";
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tang53102
2011-08-25 · 超过20用户采纳过TA的回答
知道答主
回答量:97
采纳率:40%
帮助的人:29.1万
展开全部
哇哇哇。。。呵呵。。看学到什么程度就怎么写!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式