問題
reverseString メソッドを作成して、与えられた文字列を逆順にします。
toUpperCase メソッドを作成して、与えられた文字列を大文字に変換します。
これらのメソッドを組み合わせて、文字列を逆順かつ大文字に変換するメソッド reverseAndUpperCase を作成します。
ヒント
reverseString
メソッド:reverseString
メソッドは、与えられた文字列を逆順にするためのメソッドです。- 文字列を逆順にするためには、文字列を文字の配列に変換してから、逆順に並べ替える方法があります。
- 文字列を文字の配列に変換するには
toCharArray
メソッドを使用します。 - 配列を逆順にするには、一般的にはループや
StringBuilder
クラスを使用します。
toUpperCase
メソッド:toUpperCase
メソッドは、与えられた文字列を大文字に変換するためのメソッドです。- 文字列を大文字に変換するには
toUpperCase
メソッドを使用します。
reverseAndUpperCase
メソッド:reverseAndUpperCase
メソッドは、reverseString
とtoUpperCase
メソッドを組み合わせるためのメソッドです。reverseString
メソッドを使って文字列を逆順にし、その後にtoUpperCase
メソッドを使って大文字に変換します。
これらのヒントをもとに、各メソッドを実装して reverseAndUpperCase
メソッドを作成してみてください。
参考:StringBuilder
StringBuilder
は、Javaで文字列を効率的に操作するためのクラスです。文字列はイミュータブル(不変)な性質を持つため、文字列を変更するたびに新しい文字列オブジェクトが作成されます。これが大きな文字列の場合、パフォーマンスの低下を引き起こす可能性があります。StringBuilder
はこの問題を解決するために設計されています。
以下は StringBuilder
の主な特徴と使い方の解説です。
- 可変性:
StringBuilder
は可変オブジェクトであり、文字列を変更するためのメソッドを提供します。元のオブジェクトを変更することができるため、新しいオブジェクトを作成する必要がありません。
- 効率的な文字列操作:
StringBuilder
は文字列の結合、挿入、追加などの操作を高速に行えるように最適化されています。これは、内部的に可変サイズのバッファを使用しているためです。
- メモリ効率:
StringBuilder
は必要に応じてバッファのサイズを拡張することができ、メモリの効率的な使用をサポートします。これにより、大きな文字列を扱う場合でもパフォーマンスが向上します。
- メソッドの例:
StringBuilder
は様々なメソッドを提供しています。代表的なものとしては、append
(文字列を追加)、insert
(指定位置に文字列を挿入)、delete
(指定範囲の文字列を削除)、reverse
(文字列を逆順に変更)などがあります。
StringBuilder stringBuilder = new StringBuilder("Hello");
stringBuilder.append(", Java!"); // 文字列を追加
stringBuilder.insert(6, " Awesome"); // 指定位置に文字列を挿入
stringBuilder.delete(5, 12); // 指定範囲の文字列を削除
stringBuilder.reverse(); // 文字列を逆順に変更
System.out.println(stringBuilder.toString());
この例では、StringBuilder
を使用して文字列を変更しています。
StringBuilder
を適切に使用することで、文字列の効率的な操作とメモリの効率的な利用が可能となります。特に文字列の結合や変更が頻繁に行われる場合には、StringBuilder
の使用が推奨されます。
→解答例