gpt4 book ai didi

java - 如果数字前面有 0,则必须在该位置添加空格

转载 作者:行者123 更新时间:2023-11-29 04:08:46 25 4
gpt4 key购买 nike

我试图找到给定数字的下一个奇数和偶数。例如,如果第一个数字是 9278,那么第二个数字是 1490。但是如果数字以“8”开头,例如:"847”然后输出“47”。如果 8 是一个数字,它必须打印 0。但是数字以任意数量的“8”开头,它必须添加空格而不是打印 0。

String number=String.valueOf(num);
for(int i=0;i<number.length();i++)
{
int j=Character.digit(number.charAt(i),10);

if(j%2==0)
{
int k=j+2;
if(k>=10)
k=0;
System.out.print(k);
}
if(j%2!=0)
{
int l=j+2;
if(l>=10)
l=1;
System.out.print(l);
}
}

当我输入“8149”时,此代码打印“0361”。但对我来说,它必须打印“361”。

最佳答案

你知道 char 范围 0-9 对应于 int

让我们定义一个包含所有数字的数组:

char[] digits = {'2', '3', '4', '5', '6', '7', '8', '9', '0', '1'};

并且仅使用 char 来计算下一个数字,无需转换或 if/else 需要:

String number = String.valueOf(num);
char[] out = new char[number.length()];
for (int i = 0; i < number.length(); i++) {
out[i] = digits[number.charAt(i) - '0'];
}

int leadingZeroIndex = 0;
while (out[leadingZeroIndex] == '0') {
out[leadingZeroIndex] = ' ';
leadingZeroIndex++;
}

System.out.println(String.valueOf(out));

关于java - 如果数字前面有 0,则必须在该位置添加空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56458093/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com