阿拉伯数字转换成对应的大写的汉字金额

昨天面试的时候让我编写一个将4位的阿拉伯数字转换成大写的金额
例如:1245 转换成 壹仟贰佰肆拾伍
当时的写的时候没有写全,回来后又写了一下,这里发出来和大家分享下,感觉还是写的
不好,望路过的大侠指点

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class NumtoHanzi
{

/** <一句话功能简述>
* <功能详细描述>
* @param args
* @see [类、类#方法、类#成员]
*/
public static void main(String[] args)
{
//数据字典!
char c[] = {'零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'};
// char unit[] = {'仟', '百', '十'};
String[] unit = {"仟","佰","拾",""};
//等待输入!
System.out.print("请输入一个阿拉伯数字: ");
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
// Scanner sca = new Scanner(System.in);
//得到输入!
String input = "";
try
{
// while (sca.hasNextInt())
// {
// Integer a = sca.nextInt();
//
// input = a.toString();
// }

input = br.readLine();
System.out.println(input);
for (int count = 0; count < input.length(); count++)
{
//转成数字
char temp = input.charAt(count);
switch (temp)
{
case '1':
System.out.print(c[1]);
break;
case '2':
System.out.print(c[2]);
break;
case '3':
System.out.print(c[3]);
break;
case '4':
System.out.print(c[4]);
break;
case '5':
System.out.print(c[5]);
break;
case '6':
System.out.print(c[6]);
break;
case '9':
System.out.print(c[9]);
break;
case '8':
System.out.print(c[8]);
break;
case '0':
System.out.print(c[0]);
break;
default:
break;
}
System.out.print(unit[count]);

}
}
catch (Exception e)
{
e.printStackTrace();
}
}
}

你可能感兴趣的:(阿拉伯数字转换成对应的大写的汉字金额)