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 единицу, если это было число, но я не решил проблему объединения символов.
Кто-нибудь может мне помочь?
Вы пропустили добавление значений к result
. Вам необходимо добавить увеличенную цифру или символ, как есть (если он не находится в диапазоне 0 - 8
), result
как показано ниже:
Сделайте это следующим образом:
public class Main {
public static void main(String[] args) {
System.out.println(f2("123abc"));
}
public static 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);
result += num;// Add it here
}
} else {// Add it here
result += string.charAt(i);
}
}
return result;
}
}
Вывод:
234abc
Эта статья взята из Интернета, укажите источник при перепечатке.
Если есть какие-либо нарушения, пожалуйста, свяжитесь с[email protected] Удалить.
я говорю два предложения