数组实例——将阿拉伯数字转换为最大写

题目:
将阿拉伯数字转换为最大写,比如1234转换为壹仟贰佰叁拾肆。

 1 package my_package;
 2 
 3 
 4 public class Transform {
 5     private String[] arr1={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};
 6     private String[] arr2={"拾","佰","仟","万"};
 7 
 8     public static void main(String[] args) {
 9         Transform t=new Transform();
10         System.out.println(t.transform(12345));
11     }
12 
13     public StringBuffer transform(int num){
14         String str=Integer.toString(num);
15         int length=str.length();
16         StringBuffer result=new StringBuffer();
17         //遍历字符串的每一个字符
18         for(int i=0;i<length;i++){
19             //char型数值-相应的阿拉伯数字=48,ASCII码值相差48。比如'3'-3=48
20             int n=str.charAt(i)-48;
21             //刚好是对应的
22             result.append(arr1[n]);
23 
24             //不是最后一位,且不为0,就加单位
25             if(i!=length-1 && n!=0){
26                 result.append(arr2[length-i-2]);
27             }
28 
29         }
30         return  result;
31     }
32 
33 }

以上代码只能实现 万 及以下 的转换。

猜你喜欢

转载自www.cnblogs.com/chy18883701161/p/10852094.html
今日推荐