最近在黑马学会如何将阿拉伯数字转换为大写人民币
java代码如下
import java.util.Scanner;
public class StringDemo9 {
public static void main(String[] args) {
//1.键盘录入一个金额
Scanner sc = new Scanner(System.in);
int money;
while(true){
System.out.println("请录入一个金额");
money = sc.nextInt();
if(money >= 0 && money <= 9999999){
break;
}else{
System.out.println("金额无效");
}
}
//定义一个变量用来表示钱的大写
String moneyStr = "";
while(true){
int ge = money % 10;
money = money / 10;
String capitalNumber = getCapitalNumber(ge);
moneyStr = capitalNumber + moneyStr;
if(money == 0){
break;
}
}
//3.在前面补0,补齐7位
int count = 7 - moneyStr.length();
for (int i = 0; i < count; i++) {
moneyStr = "零" + moneyStr;
}
//插入单位
//定义一个数组表示单位
String[] arr = {"佰","拾","万","仟","佰","拾","元"};
String result = "";
for(int i = 0; i < moneyStr.length(); i++){
char c = moneyStr.charAt(i);
result = result + c + arr[i];
}
System.out.println(result);
}
public static String getCapitalNumber(int number){
String[] arr = {"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};
return arr[number];
}
}