Javaで文字列を逆にする最も簡単な方法は何ですか?
組み込みのreverse()メソッド
StringBufferクラスは、 reverse()。という名前のメソッドを提供します。 現在のStringBufferオブジェクトの内容を逆にして、結果のStringBufferオブジェクトを返します。これは、Javaを使用してStingを元に戻す最も簡単な方法です。そうするために-
-
必要な文字列をパラメータとして渡して、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
文字列を逆にするさらに2つの方法を見てみましょう
再帰の使用
再帰は、それ自体の中で関数を呼び出すプロセスであり、Javaプログラムが再帰を使用してStingを逆にします-
例
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()の使用
文字列を文字配列に変換して、配列の文字を交換することもできます。
配列を逆にするには、最初の要素を最後の要素と交換し、2番目の要素を最後から2番目の要素と交換します。配列の長さが奇数の場合は、中央の要素をそのままにします。
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]
-
JavaのStringIndexOutOfBoundsExceptionとは何ですか?
文字列は、Javaで文字のシーケンスを格納するために使用され、オブジェクトとして扱われます。 java.langパッケージのStringクラスは、文字列を表します。 文字列は、(他のオブジェクトのように)新しいキーワードを使用するか、(他のプリミティブデータ型のように)リテラルに値を割り当てることによって作成できます。 String stringObject = new String("Hello how are you"); String stringLiteral = "Welcome to Tutorialspoint"; 文字列には文字の配列
-
JavaでのStringintern()メソッドの役割は何ですか?
文字列は、文字のシーケンスを格納するJavaのクラスであり、 java.langに属します。 パッケージ。 Stringオブジェクトを作成すると、それらを変更することはできません(不変)。 ストレージ すべてのStringオブジェクトは、String Constant poolと呼ばれるヒープ領域の別のメモリ位置に格納されます。 。 文字列値を定義するときはいつでも、JVMは文字列定数プールに指定された値で文字列オブジェクトを作成します。したがって、上記のプログラムを実行すると、2つの文字列値が文字列定数プールに作成されます。 intern()メソッド このメソッドは、一意