Встречается на собеседованиях • сегодня

Какие знаешь способы развернуть порядок символов в строке

В Java можно развернуть строку несколькими способами:

  1. StringBuilder (наиболее эффективный):
java
String reversed = new StringBuilder(original).reverse().toString();
  1. Через массив символов:
java
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 reversed = new String(chars);
  1. Рекурсивно (не рекомендуется для длинных строк):
java
public static String reverse(String str) {
    return str.isEmpty() ? str : reverse(str.substring(1)) + str.charAt(0);
}
  1. Java 8 Stream API:
java
String reversed = original.chars()
    .mapToObj(c -> (char)c)
    .reduce("", (s,c) -> c+s, (s1,s2) -> s1+s2);

Для Unicode-символов (особенно surrogate pairs) лучше использовать StringBuilder или правильную обработку кодовых точек.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы