2.9. Reversing a String

Problem

You need to reverse a string.

Solution

Use StringUtils.reverse( ). Supply a string parameter to this method, and it will return a reversed copy. The following example reverses two strings:

String original = "In time, I grew tired of his babbling nonsense.";
String reverse = StringUtils.reverse( original );
String originalGenes = "AACGTCCCTTGGTTTCCCAAAGTTTCCCTTTGAAATATATGCCCGCG";
String reverseGenes = StringUtils.reverse( originalGenes );

System.out.println( "Original: " + original );
System.out.println( "Reverse: " + reverse );
System.out.println( "\n\nOriginal: " + originalGenes );
System.out.println( "Reverse: " + reverseGenes );

The output contains a reversed string along with an original string:

Original: In time, I grew tired of his babbling nonsense.
Reverse: .esnesnon gnilbbab sih fo derit werg I ,emit nI

Original: AACGTCCCTTGGTTTCCCAAAGTTTCCCTTTGAAATATATGCCCGCG
Reverse: GCGCCCGTATATAAAGTTTCCCTTTGAAACCCTTTGGTTCCCTGCAA

Discussion

Reversing a String is easy, but how would you rearrange the words in a sentence? StringUtils.reverseDelimited( ) can reverse a string of tokens delimited by a character, and a sentence is nothing more than a series of tokens separated by whitespace and punctuation. To reverse a simple sentence, chop off the final punctuation mark, and then reverse the order of words delimited by spaces. The following example reverses an unrealistically simple English sentence:

public Sentence reverseSentence(String sentence) { String reversed ...

Get Jakarta Commons Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.