目的:文字列が回文配列であるかどうかを判断します。
コードは以下の通りであります:
1つの インポートjava.util.Scanner。 2 3 パブリック クラス回文{ 4 パブリック 静的 ボイドメイン(文字列[]引数){ 5 =スキャナ新しいスキャナ(System.in)。 6 ストリングS = in.next()。 7 INT N = s.length()。 8 であれば(N == 1 || N == 0 ){ 9 のSystem.out.println( "该字符串回文" )。 10 } 11 他{ 12 裁判官(S、0、N-1 )。 13 } 14 in.close()。 15 } 16 17 パブリック 静的 ボイド裁判官(文字列、int型 B、INT C){ 18 チャー C1 = a.charAt(B)。 19 チャー C2 = a.charAt(C); 20 であれば(C1 == {C2) 21 であれば(C == B || C == B + 1 ){ 22 のSystem.out.println( "该字符串回文" )。 23 } 24 他{ 25 裁判官(++ B、 - C)。 26 } 27 } 28 他{ 29 のSystem.out.println( "文字列しないパリンドローム" ); 30 } 31 } 32 33です }
方法ジャッジ三つのパラメータ:文字列は、文字列入力手段と、INT Bは最初に添え字文字列ヘッド、方法は、時間増分ごとに一度行われ、文字列の始端としてint型Cの添字は、方法が一回実行されます一度デクリメント。
特定の実装:のcharAtの使用は、それぞれ比較して、その後、C1とC2変数を表す文字列を読み込みます。(文字列の長さが偶数である場合)条件のC == bを中断またはC == B + 1 C1 ==再帰的(文字列の長さが奇数である)メソッドを呼び出すC2、懸濁液の条件を満たし、且つありません。結果まで。