将键盘输入的金额转换成大写带单位的形式。
例如:输入2135,转换成零佰零拾零万贰仟壹佰叁拾伍元。
import java.util.Scanner;
public class HelloWorld {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int number;
while(true){
System.out.println("请输入一个金额:");
number=sc.nextInt();
if(number>=0&&number<=9999999){
break;
}else{
System.out.println("您输入的金额有误,请重新输入!");
}
}
int[] arr=getnumber(number);
String s="";
String result="";
for (int i = 0; i < arr.length; i++) {
s=s+convert(arr[i]);
}
result=s.charAt(s.length()-1)+"佰"+s.charAt(s.length()-2)+"拾"+s.charAt(s.length()-3)+"万"+s.charAt(s.length()-4)+"仟"
+s.charAt(s.length()-5)+"佰"+s.charAt(s.length()-6)+"拾"+s.charAt(s.length()-7)+"元";
System.out.println(result);
}
public static int[] getnumber(int number){
int[] arr=new int[7];
int index=0;
while (number>0){
arr[index]=number%10;
index++;
number/=10;
}
return arr;
}
public static String convert(int number){
String s="";
switch (number){
case 0:
s="零";
break;
case 1:
s="壹";
break;
case 2:
s="贰";
break;
case 3:
s="叁";
break;
case 4:
s="肆";
break;
case 5:
s="伍";
break;
case 6:
s="陆";
break;
case 7:
s="柒";
break;
case 8:
s="捌";
break;
case 9:
s="玖";
break;
}
return s;
}
}