Home  >  Article  >  Java  >  In Java, what is the easiest way to reverse a string?

In Java, what is the easiest way to reverse a string?

WBOY
WBOYforward
2023-09-07 18:13:02759browse

In Java, what is the easiest way to reverse a string?

Built-in reverse() method

The StringBuffer class provides you with a method called reverse(). It inverts the contents of the current StringBuffer object and returns the resulting StringBuffer object. This is the easiest way to reverse a Sting using Java. To do this -

  • # Instantiate the StringBuffer class by passing the required String as parameter.

  • Call the reverse() method on the created object.

  • Convert it to String again using toString() method.

Example

public class Sample {
   public static void main(String args[]) {
      String str = new String("Hello how are you");
      StringBuffer sb = new StringBuffer(str);
      String str2 = sb.reverse().toString();
      System.out.println(str2);
   }
}

Output

uoy era woh olleH

Let us observe two other ways to reverse a string

Using recursion

Recursion is a process of calling a function within itself. The following java program uses recursion to reverse Sting -

Example

public class StringReverse {
   public String reverseString(String str) {
      if(str.isEmpty()) {
         return str;
      }else {
         return reverseString(str.substring(1))+str.charAt(0);
      }
   }
   public static void main(String[] args) {
      StringReverse obj = new StringReverse();
      String result = obj.reverseString("Tutorialspoint");
      System.out.println(result);
   }
}

Output

tniopslairotuT

Use toCharArray( )

You can also convert a string to a character array and swap the characters of the array.

To reverse an array, place the first element with the last element with the second element with the second to last element, and so on, leaving the middle elements unchanged if the array length is odd.

If i is the first element of the array (length array –i-1) the position of will be the last element, therefore, compare array[i] with array[ (array –i-1)] Swap the midpoint of the array from beginning to end -

Example

import java.util.Arrays;
public class StringReverse {
   public static void main(String[] args) {
      String str = "Tutorialspoint";
      char[] myArray = str.toCharArray();
      int size = myArray.length;
      for (int i = 0; i < size / 2; i++) {
         char temp = myArray[i];
         myArray[i] = myArray[size - 1 - i];
         myArray[size - 1 - i] = temp;
      }
      System.out.println("Array after reverse:: ");
      System.out.println(Arrays.toString(myArray));
   }
}

Output

Array after reverse::
[t, n, i, o, p, s, l, a, i, r, o, t, u, T]

The above is the detailed content of In Java, what is the easiest way to reverse a string?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete