Java Program to Reverse a Number.

In this article, we are going to discuss different methods of reversing a number in Java. There are three ways to reverse a number in Java and these are:

  • Reverse a number using the while loop.
  • Reverse a number using StringBuilder.
  • Reverse a number using Recursion.
Let,s discuss each approach one by one:

Reverse a number using the while loop.

In this approach, we extract each digit of the number from the right side using the modulus operator and keep adding it to a new number in reverse order.

Java Example code:

//Java code to Reverse a number using while loop
public class ReverseNumber{
	public static void main(String[] args) {

	     int num = 12345;
             int reversed = 0;

             while (num != 0) {
                int digit = num % 10;
                reversed = reversed * 10 + digit;
                num /= 10;
             }
             System.out.println("Reversed Number: " + reversed);
	}
}
Output:
Reverse Number: 54321


Reverse a number using StringBuilder.

In this approach, we convert the integer to a string, then use the StringBuilder class to reverse the string and convert it back to an integer.

Java Example Code:
//Reverse a number using StringBuilder class
public class ReverseNumber
{
	public static void main(String[] args) {
		int num = 12345;
                //converting integer to string
                String str = String.valueOf(num);
                StringBuilder sb = new StringBuilder(str);
                sb.reverse();
                //converting string to integer
                int reversed = Integer.parseInt(sb.toString());
                System.out.println("Reversed Number: " + reversed);
	}
}
Output:
Reverse Number: 54321


Reverse a number using Recursion.

In this approach, we call the same function recursively with the remaining part of the number until we have a single-digit number. Then we return the number as is.

Java Example Code:
//Reverse a number using Recursion
public class Main
{
	public static void main(String[] args) {
		int num = 12345;
        int reversed = reverseNumber(num);
        System.out.println("Reversed Number: " + reversed);
        }
    
    public static int reverseNumber(int num) {
          if (num < 10) {
          return num;
         }
        int digit = num % 10;
        return digit * (int) Math.pow(10, (int) Math.log10(num)) + reverseNumber(num / 10);
    }        
}
Output:
Reverse Number: 54321

⚡ Please share your valuable feedback and suggestion in the comment section below or you can send us an email on our offical email id ✉ algolesson@gmail.com. You can also support our work by buying a cup of coffee ☕ for us.

Similar Posts

No comments:

Post a Comment


CLOSE ADS
CLOSE ADS