在Java中反轉字串最簡單的方法是什麼?


內建reverse()方法

StringBuffer類提供了一個名為reverse()的方法。它反轉當前StringBuffer物件的內容並返回生成的StringBuffer物件。這是使用Java反轉字串最簡單的方法。操作步驟如下:

  • 將所需的字串作為引數例項化StringBuffer類。

  • 呼叫已建立物件的reverse()方法。

  • 使用toString()方法將其再次轉換為字串。

示例

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);
   }
}

輸出

uoy era woh olleH

讓我們再觀察兩種反轉字串的方法。

使用遞迴

遞迴是函式自身呼叫的過程,以下Java程式使用遞迴反轉字串:

示例

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);
   }
}

輸出

tniopslairotuT

使用toCharArray()

您還可以將字串轉換為字元陣列並交換陣列的字元。

要反轉陣列,請將第一個元素與最後一個元素交換,將第二個元素與倒數第二個元素交換,依此類推,如果陣列長度為奇數,則保留中間元素不變。

如果i是陣列的第一個元素,則(陣列長度-i-1)將是最後一個元素,因此,從陣列的開頭到中點,將array[i]與array[(陣列長度-i-1)]交換:

示例

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));
   }
}

輸出

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

更新於:2023年12月5日

967 次瀏覽

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.