Junior — Middle
What methods exist for reversing the order of characters in a string?
sobes.tech AI
Answer from AI
In Java, there are several ways to reverse the order of characters in a string:
- Using the StringBuilder or StringBuffer class:
String original = "example";
String reversed = new StringBuilder(original).reverse().toString();
System.out.println(reversed); // elpmaxe
- Converting the string to a character array and manually reversing:
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);
- Using streams for a more functional approach (starting from 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());
In practice, StringBuilder.reverse() is most often used as the simplest and most efficient method.