先回答第二个问题:首先你的代码是ok的,唯一注意的一点是你在调用caseChinese函数时传递进的参数不是int,你把你的这句 话 caseChinese(Integer.parseInt(ch+""));改成: caseChinese(Integer.parseInt(ch+"")); 就ok了。
再回答你的第一个问题:针对这个需求,没必要写的那个复杂,像下面这就可以的:【仅供参考】
- import java.io.*;
- public class Test3 {
- public static void main(String[] args) throws IOException {
- System.out.println("请输入一串数字:");
- BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
- String input = br.readLine();
- System.out.println(caseChinese(input));;
- }
-
- public static String caseChinese(String in)
- {
- char []str4China = {'零','壹','贰','叁','肆','伍','陆','柒','捌','玖'};
- StringBuilder sb = new StringBuilder();
- for(int i=0; i<in.length(); i++){
- int a=Integer.parseInt(in.charAt(i)+"");
- sb.append(str4China[a]);
- }
- return sb.toString();
- }
- }
复制代码
|