请用Java语言来解一下这个程序

整数题目内容:你的程序要读入一个整数,范围是[-100000,100000]。然后,用汉语拼音将这个整数的每一位输出出来。如输入1234,则输出:yi er san si注意,每个字的拼音之间有一个空格,但是最后的字后面没有空格。当遇到负数时,在输出的开头加上“fu”,如-2341输出为:fu er san si yi输入格式:一个整数,范围是[-100000,100000]。输出格式:表示这个整数的每一位数字的汉语拼音,每一位数字的拼音之间以空格分隔,末尾没有空格。

定义11个元素的字符串数组保存0~9的拼音及负数拼音,用取模与除,求出每一位的数值作为字符串下标,用字符串替换。

代码如下,仅供参考,切勿直接复制粘贴,了解它的思路之后,自己尝试实现一下

import java.util.Scanner;

public class  Demo56 {


    public static void main(String[] args) {

        Scanner in = new Scanner(System.in);
        int num = in.nextInt();
        int s[]=new int[1111];
        int n = 0;
        int cnt = 0;
        int m = 1;
        int num1 = 0;
        while(num!=0)
        {
            num1=num%10;
            num=num/10;
            s[cnt]=num1;
            cnt++;
            n++;
        }   //将输入的数据用数组表现出来
        for(cnt=n-1;cnt>=0;cnt--) {
                m=s[cnt];   //逆序输出数组
            switch(m)
            {
                case 0:System.out.print("ling");
                    break;
                case 1:System.out.print("yi");
                    break;
                case 2:System.out.print("er");
                    break;
                case 3:System.out.print("san");
                    break;
                case 4:System.out.print("si");
                    break;
                case 5:System.out.print("wu");
                    break;
                case 6:System.out.print("liu");
                    break;
                case 7:System.out.print("qi");
                    break;
                case 8:System.out.print("ba");
                    break;
                case 9:System.out.print("jiu");
                    break;
            }
            System.out.print(" ");
        }
    }
}

希望对题主有所帮助,可以的话,帮忙点个采纳!