Рекурсия Java пытается разделить текст на куски равномерно, заполняя в конце
Я пишу программу шифрования для курса, который я беру, чтобы изучить Java. Предполагается, что этот метод разбивает текст на куски, размер которых определяется пользователем. ("3" = "XXX XXX XXX") Затем я должен заполнить конец строки буквой "x", когда строка не разделяется равномерно. Я еще не написал часть, чтобы дополнить "x"в конце, потому что мой метод оставляет "чудаков" в начале. ("3" = "X XXX XXX XXX" или "XX XXX XXX" вместо "XXX XXX XX" или "XXX XXX X") Я описал свой метод ниже. Любой совет будет очень признателен!
Что я уже пробовал:
public static String groupify(String str, int n){ if(str.length() == 0) return str; char c = str.charAt(0); String s = " "; if(str.length() % n == 1) return c + s + groupify(str.substring(1), n); return c + groupify(str.substring(1), n); }
Gerry Schmitz
Мы не делаем "обзоры кода".
Вы "задаете вопрос", а мы пытаемся ответить. Вот и все.
Ryan Huffman
Я включил код только потому, что считал его необходимым. Как кто-то может помочь мне найти мою ошибку без кода? Честно говоря, я просто пытаюсь понять. Я гуглил это по крайней мере 10 раз (каждый раз разные формулировки) и читал все, что он поднимал, что казалось даже несколько связанным. Я разместил на сайтах по программированию Facebook. Я пытался выяснить это самостоятельно, изменив код. Сейчас я в растерянности.
Richard MacCutchan
Начиная с начала строки.
- если длина строки меньше или равна n, верните строку.
- возьмите первую подстроку длины n и добавьте ее в свой набор блоков
- повторяйте до тех пор, пока не будет больше данных.
Member 14000163
Большое вам спасибо, Ричард Маккатчен!