四十行代码搞定金额的中文转换
java
import java.util.Scanner;
public class AmountConversion {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int money = sc.nextInt();
String str = conversion(money);
System.out.println(str);
}
private static String conversion(int money) {
char[] con = {'零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖', '拾'};
String res = "";
int remainder = 0;
while (money != 0) {
remainder = money % 10;
money = money / 10;
res = res + con[remainder];
}
char[] con2 = {'亿', '仟', '佰', '拾', '万', '仟', '佰', '拾', '元'};
String result = "";
for (int i = res.length() - 1, j = 0; i >= 0; i--, j++) {
if (res.charAt(i) == '零') {
continue;
}
result = result + con2[con2.length - 1 - j] + res.charAt(i);
}
if (result == "") {
return result + "零元整";
}
result = InverStrings(result);
if (result.charAt(result.length() - 1) != '元') {
return result + "元整";
}
return result + "整";
}
private static String InverStrings(String str) {
String str2 = "";
for (int i = str.length() - 1; i >= 0; i--) {
str2 = str2 + str.charAt(i);
}
return str2;
}
}
欢迎讨论 欢迎复制