Java
 Computer >> コンピューター >  >> プログラミング >> Java

文字列を逆順に反転させるJavaプログラムの作成方法

この記事では、文字列を逆順に反転させる方法について解説します。文字列(String)とは、1つ以上の文字を含み、ダブルクォート(" ")で囲まれたデータ型のことです。文字列の反転とは、文字列を後ろから、つまり右から左へ向かって表示することを指します。

以下に具体的な例を示します。

入力値と出力値

入力

定義された文字列: Java Program

出力(期待される結果)

反転後の文字列: margorP avaJ

アルゴリズム

ステップ 1 - 開始
ステップ 2 - 文字列型の変数 input_string と reverse_string、および char 型の変数 temp を宣言する。
ステップ 3 - 値を定義する。
ステップ 4 - forループで繰り返し処理を行い、i番目の文字を temp に代入し、その後「temp + reverse_string」を reverse_string に代入する。つまり、元の文字列の先頭の要素を、反転用文字列の末尾に追加していく。値を保存する。
ステップ 5 - 結果を表示する。
ステップ 6 - 終了。

例1:main関数内ですべての処理を実行する場合

ここでは、すべての操作を「main」関数の中でまとめて実行します。

public class ReverseString {
   public static void main (String[] args) {
      String input_string= "Java Program", reverse_string="";
      char temp;
      System.out.println("The string is defined as: " + input_string);
      for (int i=0; i<input_string.length(); i++) {
         temp= input_string.charAt(i);
         reverse_string= temp+reverse_string;
      }
      System.out.println("\nThe reversed string is: "+ reverse_string);
   }
}

出力結果

The string is defined as: Java Program

The reversed string is: margorP avaJ

例2:オブジェクト指向プログラミングとして関数にカプセル化する場合

ここでは、操作内容を関数にカプセル化し、オブジェクト指向プログラミングの形式で実装します。

public class ReverseString {
   static void reverse(String input_string){
      String reverse_string = "";
      char temp;
      for (int i=0; i<input_string.length(); i++) {
         temp= input_string.charAt(i);
         reverse_string= temp+reverse_string;
      }
      System.out.println("\nThe reversed string is: "+ reverse_string);
   }
   public static void main (String[] args) {
      String input_string= "Java Program";
      System.out.println("The string is defined as: " + input_string);
      reverse(input_string);
   }
}

出力結果

The string is defined as: Java Program

The reversed string is: margorP avaJ

補足:より効率的な方法

上記の方法では文字列の連結を繰り返すため、長い文字列の場合はパフォーマンスが低下する可能性があります。実際の開発では、StringBuilderクラスreverse() メソッドを使うと、より簡潔かつ高速に文字列を反転できます。

public class ReverseString {
   public static void main(String[] args) {
      String input_string = "Java Program";
      String reversed = new StringBuilder(input_string).reverse().toString();
      System.out.println("The reversed string is: " + reversed);
   }
}

用途や要件に応じて、forループを使った基本的な手法とStringBuilderを使った手法を使い分けるとよいでしょう。

  1. Javaで文字列内の母音をカウントする方法をわかりやすく解説

    Javaでは、拡張forループと条件分岐を組み合わせることで、文字列に含まれる母音(a、e、i、o、u)の数を簡単にカウントできます。この記事では、基本的な実装方法をサンプルコード付きで解説します。 カウントの仕組み まず、カウント用の変数 count を 0 で初期化します。これは、母音の数をこの変数に加算していくためです。 次に、toCharArray() メソッドを使って文字列を1文字ずつ取り出し、Character.toLowerCase() ですべて小文字に変換します。これにより、大文字・小文字を区別せずに母音を判定できるようになります。 for(char ch : myStr.t

  2. Javaで文字列を逆順にする方法まとめ|最も簡単な方法から再帰・Java 8まで

    文字列の反転(リバース)は、Javaの技術面接で最も頻出する質問の一つです。面接官は「複数の異なる方法で文字列を反転するコードを書いてください」「組み込みメソッドを使わずに反転してください」「再帰を使って実装してください」など、さまざまなバリエーションで質問してくることがあります。 この記事では、Javaで文字列を逆順にするための代表的な方法を、実際に動作するサンプルコードとともに紹介します。 Javaで文字列を反転する最も簡単な方法 Javaで文字列を反転する最も簡単な方法は、StringBuilderクラスが提供する組み込みのreverse()メソッドを使うことです。わずか1行で実装でき、