Reverse String in Java – Reverse String by Words

Learn to write Java program to reverse a String. We will first see how to reverse string and the we will also see how to reverse the words in String.

It’s common puzzle asked in Java interviews at beginner level. Let’s memorize these solutions for quick recall.

1. Java program to reverse string

You can reverse a string by character easily, using a StringBuilder.reverse() method.

String blogName = "HowToDoInJava.com";

String reverse = new StringBuilder(string).reverse();

System.out.println("Original String -> " + blogName);
System.out.println("Reverse String -> " + reverse);

Output:
Original String -> HowToDoInJava.com
Reverse String -> moc.avaJnIoDoTwoH

Java Program to reverse string by words

While reversing string content by words, most natural way is to use a StringTokenizer and a Stack. As you are aware that Stack is a class that implements an easy-to-use last-in, first-out (LIFO) stack of objects.

]
String description = "Java technology blog for smart java concepts and coding practices";

// reverse string builder
StringBuilder reverseString = new StringBuilder();

// Put words from String in Stack
Stack<String> myStack = new Stack<>();

StringTokenizer tokenizer = new StringTokenizer(description, " ");

while (tokenizer.hasMoreTokens()) {
	myStack.push(tokenizer.nextToken());
}

//Pop each word from stack and append in builder

while (!myStack.empty()) {
	reverseString.append(myStack.pop() + " ");
}

System.out.println(reverseString.toString());

Output:

practices coding and concepts java smart for blog technology Java 

Happy Learning !!

Reference(s):

StringBuilder.reverse() Java Doc
StringTokenizer

Leave a Reply

4 Comments
Most Voted
Newest Oldest
Inline Feedbacks
View all comments

About Us

HowToDoInJava provides tutorials and how-to guides on Java and related technologies.

It also shares the best practices, algorithms & solutions, and frequently asked interview questions.