$show=/label

Java Program To Reverse A String Using Recursion

SHARE:

A quick java program to write code on how to reverse a string using recursion. If you know charAt() and substring() method, you can implement a string reversing technique with recursion.

1. Introduction


In this article, You're going to learn how to reverse a string using recursion approach. The first program is to reverse a string and the second program will read the input from the user.

In the previous articles, I have shown already how to reverse a string without using any built-in function and also how to reverse the words in a string.

Java Program To Reverse A String Using Recursion



2. What Is Recursion


Recursion means in computer science is that a method calling the same function with different input.

The recursive method must have at least one argument.

This approach solves many complex programs easily but you have to be very careful otherwise will create StackOverflow or outofmemoryerror.

Reverse A String Using Recursion

3. Example Program to Reverse String using Recursion


To understand this program you should know two String class methods and those are charAt() and substring() methods.

package com.javaprogramto.w3schools.programs.string;

public class StringReverseRecursion {

    public static void main(String[] args) {

        String s1 = "Welcome to the javaprogramto.com";

        String reversedS1 = reverseString(s1);
        System.out.println("String s1 before reversing : "+s1);
        System.out.println("Reversed String s1 : "+reversedS1);

        String s2 = "Another String s2";

        String reversedS2 = reverseString(s2);
        System.out.println("String s2 before reversing : "+s2);
        System.out.println("Reversed String s2 : "+reversedS2);
    }


    private static String reverseString(String sentense)
    {
        if (sentense.isEmpty())
            return sentense;

        //Calling method Recursively
        return reverseString(sentense.substring(1)) + sentense.charAt(0);
    }
}

Output:

String s1 before reversing : Welcome to the javaprogramto.com

Reversed String s1 : moc.otmargorpavaj eht ot emocleW

String s2 before reversing : Another String s2

Reversed String s2 : 2s gnirtS rehtonA

4. Another Example to reverse String reading from the user

In this program, the User has to enter the string to be reversed. Scanner class nextLine() method is used to read the input string from the user keyboard and pass the string value to the recursive method reverseString().



package com.javaprogramto.w3schools.programs.string;

import java.util.Scanner;

public class StringReverseRecursionFromUser {

    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);

        System.out.println("Enter String One");
        String s1 = scanner.nextLine();

        String reversedS1 = reverseString(s1);
        System.out.println("String s1 before reversing : "+s1);
        System.out.println("Reversed String s1 : "+reversedS1);

        System.out.println("Enter String Two");
        String s2 = scanner.nextLine();

        String reversedS2 = reverseString(s2);
        System.out.println("String s2 before reversing : "+s2);
        System.out.println("Reversed String s2 : "+reversedS2);
    }


    private static String reverseString(String sentense)
    {
        if (sentense.isEmpty())
            return sentense;

        //Calling method Recursively
        return reverseString(sentense.substring(1)) + sentense.charAt(0);
    }
}


Output:


Enter String One

Reading from user

String s1 before reversing : Reading from user

Reversed String s1 : resu morf gnidaeR

Enter String Two

String entered by user

String s2 before reversing : String entered by user

Reversed String s2 : resu yb deretne gnirtS

5. Conclusion

In this article, We've seen how to reverse a String using recursive technique.

All the code shown in this article is over GitHub.

Please leave your questions and comments on the comments section.

If you like the article, please share with your friends.

COMMENTS

BLOGGER

About Us

Author: Venkatesh - I love to learn and share the technical stuff.
Name

accumulo,1,ActiveMQ,2,Adsense,1,API,37,ArrayList,18,Arrays,24,Bean Creation,3,Bean Scopes,1,BiConsumer,1,Blogger Tips,1,Books,1,C Programming,1,Collection,8,Collections,37,Collector,1,Command Line,1,Comparator,1,Compile Errors,1,Configurations,7,Constants,1,Control Statements,8,Conversions,6,Core Java,149,Corona India,1,Create,2,CSS,1,Date,3,Date Time API,38,Dictionary,1,Difference,2,Download,1,Eclipse,3,Efficiently,1,Error,1,Errors,1,Exceptions,8,Fast,1,Files,17,Float,1,Font,1,Form,1,Freshers,1,Function,3,Functional Interface,2,Garbage Collector,1,Generics,4,Git,9,Grant,1,Grep,1,HashMap,2,HomeBrew,2,HTML,2,HttpClient,2,Immutable,1,Installation,1,Interview Questions,6,Iterate,2,Jackson API,3,Java,32,Java 10,1,Java 11,6,Java 12,5,Java 13,2,Java 14,2,Java 8,128,Java 8 Difference,2,Java 8 Stream Conversions,4,java 8 Stream Examples,12,Java 9,1,Java Conversions,14,Java Design Patterns,1,Java Files,1,Java Program,3,Java Programs,114,Java Spark,1,java.lang,4,java.util. function,1,JavaScript,1,jQuery,1,Kotlin,11,Kotlin Conversions,6,Kotlin Programs,10,Lambda,2,lang,29,Leap Year,1,live updates,1,LocalDate,1,Logging,1,Mac OS,3,Math,1,Matrix,6,Maven,1,Method References,1,Mockito,1,MongoDB,3,New Features,1,Operations,1,Optional,6,Oracle,5,Oracle 18C,1,Partition,1,Patterns,1,Programs,1,Property,1,Python,2,Quarkus,1,Read,1,Real Time,1,Recursion,2,Remove,2,Rest API,1,Schedules,1,Serialization,1,Servlet,2,Sort,1,Sorting Techniques,8,Spring,2,Spring Boot,23,Spring Email,1,Spring MVC,1,Streams,31,String,61,String Programs,28,String Revese,1,StringBuilder,1,Swing,1,System,1,Tags,1,Threads,11,Tomcat,1,Tomcat 8,1,Troubleshoot,26,Unix,3,Updates,3,util,5,While Loop,1,
ltr
item
JavaProgramTo.com: Java Program To Reverse A String Using Recursion
Java Program To Reverse A String Using Recursion
A quick java program to write code on how to reverse a string using recursion. If you know charAt() and substring() method, you can implement a string reversing technique with recursion.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFFfGXLjgoNF0QPRX0O4n9z30-1QjpnAcVCnBOw2SL_x_4D1Ex1Iel7xYd7gnsKl9s7gXen32uh_TRSIzeiGIw_XIkar3OZJaZ0Dl8nzO8xsdQpNwC4EbCZ1WQ8TBZFOCvsaLXoLwdUM8/s640/Java+Program+To+Reverse+A+String+Using+Recursion.png
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFFfGXLjgoNF0QPRX0O4n9z30-1QjpnAcVCnBOw2SL_x_4D1Ex1Iel7xYd7gnsKl9s7gXen32uh_TRSIzeiGIw_XIkar3OZJaZ0Dl8nzO8xsdQpNwC4EbCZ1WQ8TBZFOCvsaLXoLwdUM8/s72-c/Java+Program+To+Reverse+A+String+Using+Recursion.png
JavaProgramTo.com
https://www.javaprogramto.com/2020/06/java-program-to-reverse-a-string-using-recursion.html
https://www.javaprogramto.com/
https://www.javaprogramto.com/
https://www.javaprogramto.com/2020/06/java-program-to-reverse-a-string-using-recursion.html
true
3124782013468838591
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share to a social network STEP 2: Click the link on your social network Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy Table of Content