现在的位置: 首页 > 综合 > 正文

10万以下 阿拉伯转大写

2013年02月01日 ⁄ 综合 ⁄ 共 562字 ⁄ 字号 评论关闭
/**
* 念10万以内的任意数字。例如534念作伍佰叁十肆,
* 203念作贰佰零叁。7003念作柒千零叁。
*/
public class Exec5 {
public static void main(String[] args) {
int n = 10;

//拆分数字
/*
* 个位数字放在数组的末尾,
* 十位数字放在倒数第二个,依次类推
*/
int[] number = new int[10];
int num = 0; //拆出的数字个数
int len = number.length;
int temp = n;
while(temp > 0){
//存储拆分出的数字
number[len - 1 - num] = temp % 10;
num
++;
temp
/= 10; //去掉个位数字
}

//转换为大写
char[] upper = {'','',
'','','','','','','',''
};
char[] right = {' ','','','',''};

String s
= "";
boolean b = false;
for(int i = len - num;i < len;i++){
if(number[i] == 0){
b
= true;
}
else{
if(b){
s
= s + "";
b
= false;
}
s
= s + upper[number[i]] +
right[len
- i - 1];
}

}

System.out.println(s);

}

}

抱歉!评论已关闭.