необходимо реализовать метод (Класс Unit1, метод revertString()), который переставит символы в строке

Знаю что через for, а как именно не могу сообразить?

Можете подсказать? Код прилагаю. Это по Java.

Необходимо реализовать метод (Класс Unit1, метод revertString()), который переставит символы в строке (переменная INPUT_STRING внутри класса Unit1) в обратном порядке, без использования метода reverse() из класса StringBuilder.

В случае успеха в консоль будет выведено сообщение "Строка изменена корректно"

public class Unit1 {

private static final String INPUT_STRING = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, "
    + "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.";


public static void main(String[] args) {
    String result = revertString();
    checkResult(result);
}

/**
 * При реализации метода нельзя использовать метод reverse() из класса StringBuilder
 */
private static String revertString() {
    return "";
}

private static void checkResult(String result) {
    if (INPUT_STRING.equals(new StringBuilder(result).reverse().toString())) {
        System.out.println("Строка изменена корректно");
    } else {
        throw new RuntimeException("Ошибка, строка изменена неверно");
    }
}

}


Ответы (2 шт):

Автор решения: dmtr

Взять строку, разбить на массив символов, пройтись циклом от последнего индекса массива к нулевому, записывая их в новую строку, вернуть строку в метод. Все.

→ Ссылка
Автор решения: Chubatiy

Через стримы

//генерим индексы
return IntStream.range(0, INPUT_STRING.length())
   //выбираем нужный символ из строки
   .mapToObj((i) -> String.valueOf(INPUT_STRING.charAt(INPUT_STRING.length() - i - 1)))
   //соединяем воедино
   .collect(Collectors.joining());

То же самое через for

    //будующая строка
    String out = "";
    //перебираем индексы от последнего до 0
    for(int i = INPUT_STRING.length() - 1; i>=0; i--){
        //склеиваем
        out+=INPUT_STRING.charAt(i);
    }
    return out;
→ Ссылка