Sobes.tech
Назад к вопросам
Junior — Middle
58

Какие методы существуют для обращения порядка символов в строке?

Компании, где спрашивали
Surf

Ответ от нейросети

sobes.tech AI

В Java существует несколько способов обратить порядок символов в строке:

  1. Использование класса StringBuilder или StringBuffer:
String original = "example";
String reversed = new StringBuilder(original).reverse().toString();
System.out.println(reversed); // elpmaxe
  1. Преобразование строки в массив символов и ручное обращение:
char[] chars = original.toCharArray();
for (int i = 0, j = chars.length - 1; i < j; i++, j--) {
    char temp = chars[i];
    chars[i] = chars[j];
    chars[j] = temp;
}
String reversedManual = new String(chars);
  1. Использование потоков (Streams) для более функционального подхода (начиная с Java 8):
String reversedStream = original.chars()
    .mapToObj(c -> (char)c)
    .collect(Collectors.collectingAndThen(Collectors.toList(), list -> {
        Collections.reverse(list);
        return list.stream();
    }))
    .map(String::valueOf)
    .collect(Collectors.joining());

На практике чаще всего используют StringBuilder.reverse() как самый простой и эффективный способ.