是2011金山校园招聘的笔试题。
题目是这样的:提供一个数字10806,需要将该数字转换成汉字如 壹万零捌佰零陆。
这个题目的关键就是零的处理。。虽然我们平时说话不带零,但是题目就这么要求。。没办法。。
代码实现如下
说下大概的想法:因为转换的位置是相对固定的,所以可以采用枚举法。。不清楚具体叫什么,但是大概思想是这样的。。
如果要改进的话,可以从配置文件读取,这样就可以拓展到多个语言。。
上面的代码只针对万级别的数字,当数字大于万,上十万的时候,就不行了。。其实,上十万后,也是循环的,只是要多加几个判断。。懒得加了。。
有更好方法的记得和我交流下哦。