【发布时间】:2020-10-29 02:49:27
【问题描述】:
public String f2(String string) {
String result = "";
String num = "";
for (int i = 0; i < string.length(); i++) {
if (Character.isDigit(string.charAt(i))) {
int number = Integer.parseInt(string.charAt(i) + "");
if (number > 0 || number < 8) {
number += 1;
num = String.valueOf(number);
}
}
}
return result;
}
输入示例:
123abc
预期输出:
234abc
如果是数字,我解决了字符的值增加1个单位,但我没有解决将字符放在一起的问题。
有人可以帮我吗?
【问题讨论】:
-
用
num += String.valueOf(number)代替num = String.valueOf(number)然后返回num -
不,我不想返回 234abc,而不是 234 ????
-
对了,如果是
if(!Character.isDigit(string.charAt(i))),则执行result += string.charAt(i);,最后在结果前面加上num -
如果我输入:1a2b3c => 结果必须是 2a3b4c ????
-
没错,所以我给你的解决方案是针对简单的情况,对于你提出的情况,你可以从我的开始