这个版本没有考虑到位数的问题,待解决
Code如下:
package problem;
import java.util.*;
public class Rroblem {
public Rroblem() {
}
public static void main(String[] args) {
System.out.println("请输入要转换的数字");
Scanner readNumber=new Scanner(System.in);
String userString=readNumber.next();
boolean isNumber=userString.matches("^-?//d+$"); //利用正则表达式判断是否为数字
if(isNumber)
System.out.println("转换后变成:"+Rroblem.connersion(userString)+"元整");
else
System.out.println("您输入的字符串不能转换为数字!");
}
/*-------------------------
该函数用于对数字字符串进行转换
String number:数字字符串
Return:转换完后的字符串
--------------------------*/
public static String connersion(String number)
{
char[] temp=number.toCharArray();
try {
for(int i=0;i<temp.length;i++)
{
switch(temp[i])
{
case '0':temp[i]='零';break;
case '1':temp[i]='壹';break;
case '2':temp[i]='贰';break;
case '3':temp[i]='叁';break;
case '4':temp[i]='肆';break;
case '5':temp[i]='伍';break;
case '6':temp[i]='陆';break;
case '7':temp[i]='柒';break;
case '8':temp[i]='捌';break;
case '9':temp[i]='玖';break;
}
}
} catch (Exception ex) {
return null;
}
return new String(temp);
}
}