A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 洪伟 中级黑马   /  2015-6-20 11:00  /  488 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. import java.util.Scanner;

  2. /**
  3. *
  4. * 从键盘接受一个数字,列出该数字的中文表示格式,例如:键盘输入123, 打印出一二三;键盘输入3103,打印出三一零三。
  5. *
  6. * @author wh
  7. *
  8. */

  9. public class Test2 {

  10.         public static void main(String[] args) {
  11.                 Scanner s = new Scanner(System.in);//获取键盘输入
  12.                 String b = null;//将输入的数字转成字符串
  13.                 String s2="";//结果
  14.                 String[] sl = new String[10];//每个元素为一位数的汉字
  15.                 if (s.hasNextInt()) {
  16.                         b = s.next();
  17.                         for (int i = 0; i < b.length(); i++) {
  18.                                 char c = b.charAt(i);//获取每一位上的数字字符
  19.                                 switch (c) {//将获取的字符匹配转换
  20.                                 case '0':
  21.                                         sl[i] = "零";
  22.                                         break;
  23.                                 case '1':
  24.                                         sl[i] = "一";
  25.                                         break;
  26.                                 case '2':
  27.                                         sl[i] = "二";
  28.                                         break;
  29.                                 case '3':
  30.                                         sl[i] = "三";
  31.                                         break;
  32.                                 case '4':
  33.                                         sl[i] = "四";
  34.                                         break;
  35.                                 case '5':
  36.                                         sl[i] = "五";
  37.                                         break;
  38.                                 case '6':
  39.                                         sl[i] = "六";
  40.                                         break;
  41.                                 case '7':
  42.                                         sl[i] = "七";
  43.                                         break;
  44.                                 case '8':
  45.                                         sl[i] = "八";
  46.                                         break;
  47.                                 case '9':
  48.                                         sl[i] = "九";
  49.                                         break;

  50.                                 default:
  51.                                         break;
  52.                                 }
  53.                         }
  54.                 } else {
  55.                         System.out.println("请输入整数");
  56.                 }
  57.           for(String s1:sl)//处理结果
  58.                   if(s1!=""&&s1!=null)
  59.                    s2 += s1;
  60.                   System.out.print(s2);//打印
  61.         }

  62. }
复制代码

3 个回复

倒序浏览
受教了谢谢  
回复 使用道具 举报
建议用码表形式,这种代码,写这么长,真是难受。String table[] = {"零","一","二","三",……}这个样子的
回复 使用道具 举报
guohaichang 发表于 2015-6-20 11:31
建议用码表形式,这种代码,写这么长,真是难受。String table[] = {"零","一","二","三",……}这个样子的 ...

没想到啊,thanks
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马