如何用Java中的字符替换整数数组

整数= 0111254

将所有0替换为“ z”

用'p'替换奇数整数

用'q'替换整数

输出应为zpppqpq

我的部分代码...

    public static void main(String[] args) {
    int num;
    Scanner sc=new Scanner(System.in);
    num=sc.nextInt();
    int temp;
    int b[]=new int[10];
    char a[]=new char[10];


    for(int i=0;i<b.length;i++) {
    while(num!=0)
    {
        temp=num%10;

        b[i]=temp;

        num=num/10;
    }
    }

    for(int i=0;i<b.length;i=i+2)
    {
        if(b[i]==0)
        {
            b[i]=115;
        }

        else if(b[i]%2!=0)
        {
            b[i]=113;
        }
        else if(b[i]%2==0) {
            b[i]=112;
        }
    }

    for(int i=0;i<a.length;i++)
    {
        a[i]=(char)b[i];
    }
    for(int i:a)
     {
         System.out.print((char)i);
     }

它给出错误的q s s s输出

评论
  • lenim
    lenim 回复

    You could turn that integer into a string and then use String.replace().

    String numberString = ""+0111254;
    // Replace all 0 chars with z
    numberString.replace('0','z');
    // etc...