Я делаю это конкретное упражнение здесь: Вопрос: Если задана непустая строка и int N, вернуть строку, созданную начиная с char 0, изатем каждый N-й символ строки.Поэтому, если N равно 3, используйте char 0, 3, 6, ... и так далее.N равно 1 или более. Например: EveryNth ("Чудо", 2) → "Mrce"
Мой код:
public String everyNth(String str, int n) {
int a = 0; String result= "";
for (int i=0;i<str.length();i++) {
if (str.charAt(i) % n == 0) {
result = result + str.charAt(i);
a++;
}
}
return result;
}
Я могу 't выяснить, как исправить мой код, исходя из моего плана: 1. Переместить результат в результат String 2. Запустить цикл и перемещать данные только в том случае, если модульное значение = 0
Но вместо получения Mrce , я получаю rl Мне не нужно более простое решение, я просто хочу понять, что происходит неправильно и как заставить его работать.
Упражнение Ref: https://codingbat.com/prob/p196441