import java.util.Scanner;
public class jin {
public static void main(String[] args) {
//金额转换
//思路:2135变为贰仟壹佰叁拾伍再变为零佰零拾零万贰仟壹佰叁拾伍
//1.先键盘录入一个金额
Scanner sc = new Scanner(System.in);
System.out.println("请输入金额");
int money = sc.nextInt();
//2.定义一个数组把数字的繁体依次放入
//String[] arr = {"零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"};
//3.将金额个,十,百。千,万,十万,百万位的数字依次转变为繁体
String number = "";//定义一个字符串来接收
int a=0;//记录数字有几位
while (true) {
if (money < 0 || money > 9999999) {//判断是否可以进行金额转换
System.out.println("数字不合法");
break;
} else {
if (money != 0) {//将金额个,十,百,千,万,十万,百万位的数字依次取出,将这些数字转变为繁体并放入String中
int ge = money % 10;
money = money / 10;
String b=change(ge);
number = b +number;
a++;
} else break;
}
}
//System.out.println(number);
//4.将数字填充为七位数(用零)
for (int i = 0; i < 7-a; i++) {
number="零"+number;
}
//System.out.println(number);
//6.1定义一个数组把数字的单位存入
//6.2定义一个新的字符串,储存结果
// 6.3在每个位后添加单位
String[]unit={"佰", "什", "万","仟","佰","什","元"};
String result="";
for (int i = 0; i < number.length(); i++) {
char c=number.charAt(i);
//System.out.println(c);
result=result+c+unit[i];
}
System.out.println(result);
}
//将字符串的数字转变为繁体
public static String change(int number) {
String[] arr = {"零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"};//定义一个数组把数字的繁体依次放入
return arr[number];
}
}
结果
请输入金额
1213
零佰零什零万壹仟贰佰壹什叁元