如何編寫程式使用 Java 中的 reverse() 方法反轉一個字串?


你可以用幾種方法反轉字串,而不使用 reverse() 函式。

使用遞迴 − 遞迴是以自相似的方式重複項的過程。在程式語言中,如果一個程式允許你在同一個函式內呼叫函式,那麼該函式稱為函式的遞迴呼叫。你可以使用遞迴函式來反轉一個字串,如下面的程式所示。

示例

import java.util.Scanner;
public class StringReverse {
   public static String reverseString(String str){
      if(str.isEmpty()){
         return str;
      }else{
         return reverseString(str.substring(1))+str.charAt(0);
      }
   }
   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter a String value: ");
      String str = sc.next();
      String result = StringReverse.reverseString(str);
      System.out.println(result);
   }
}

輸出

Enter a String value:
Tutorialspoint
tniopslairotuT

轉換為位元組/字元陣列:你可以分別使用 getBytes() 或 toCharArray() 方法獲得位元組或字元陣列。

要反轉給定的字串

  • 將它轉換為陣列。
  • 反轉陣列中的元素。
  • 使用結果陣列建立另一個字串。

示例

import java.util.Scanner;
public class StringReverse {
   public static String reverseString(String str){
      //Converting to character array
      char ch[] = str.toCharArray();
      int n = ch.length;
      char result[] = new char[n];
      for(int i = 0; i<ch.length; i++) {
         result[n-1] = ch[i];
         n = n - 1;
      }
      return new String(result);
   }
   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter a String value: ");
      String str = sc.next();
      String result = StringReverse.reverseString(str);
      System.out.println(result);
   }
}

輸出

Enter a String value:
Tutorialspoint
tniopslairotuT

更新日期: 02-Aug-2019

4K+ 瀏覽量

開啟您的 職業

透過完成課程獲得認證

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