Stringクラスのメソッドを見ても文字列のリバース(反転)がありません。
文字列のリバース(反転)をしたい場合は、StringBufferを使用します。
以下に文字列のリバース(反転)のサンプルソースおよび実行例を記します。
StringBufferのreverseメソッドを使用することにより、
文字列をリバースすることができます。
以下のように使用します。
StringBuffer sb = new StringBuffer("Hello"); System.out.println(sb.reverse());
以下にStringBufferのreverseメソッドを使用したサンプルソースを記します。
StrReverse.java UTF8, LF
class StrReverse { public static void main(String[] args) { String catchphrase = "Write once, Run anywhere"; StringBuffer sb = new StringBuffer(catchphrase); System.out.println("-- orignal --"); System.out.println(sb); System.out.println("-- reverse --"); System.out.println(sb.reverse()); catchphrase = "一度書けばどこでも使える"; sb = new StringBuffer(catchphrase); System.out.println("-- orignal --"); System.out.println(sb); System.out.println("-- reverse --"); System.out.println(sb.reverse()); } }
英字文字列と日本語文字列で試してみます。
$ javac StrReverse.java $ java StrReverse -- orignal -- Write once, Run anywhere -- reverse -- erehwyna nuR ,ecno etirW -- orignal -- 一度書けばどこでも使える -- reverse -- るえ使もでこどばけ書度一
文字列が反転しているのが確認できます。
使用したJDKバージョンは以下の通りです。
$ java -version; javac -version java version "1.7.0_51" OpenJDK Runtime Environment (IcedTea 2.4.4) (suse-24.13.5-x86_64) OpenJDK 64-Bit Server VM (build 24.45-b08, mixed mode) javac 1.7.0_51
以上、文字列リバース・反転のサンプルソースでした。