まず、回文は、マインドフルネスと抗コンセプトは同じ文字列である「12345」、「abcdcba」に似た形を指し、
文字列が回文であるかどうかを判断するには、ここでの方法の3種類を記述する
- フリップ文字列反転が元の文字列と文字列と同じであるか否かを判定する
1 公共 静的 ボイドメイン(文字列[]引数){ 2 ストリングS = "abcdcba" ; 3 //のStringBuilderう逆の方法により文字列反転 4。 StringBuilderのSB = 新しい新規のStringBuilder(S)を、 5 列afterReverse = sb.reverse ()().toString; 6 // 反転決意文字列の後には、元の文字列と等しい、等しい、のcompareToことができる 7。 INTのisEqual = afterReverse.compareTo(S); // 出力が0に等しい場合 。8 IF( == 0のisEqual ){ 9。 のSystem.out.println( "パリンドローム" ); 10 } そうでなければ 11。 System.out.println( "パリンドロームではない" ); 12 }
注:のcompareTo、必要に応じて、大文字小文字を区別せずに、待ちたくないとみなさ、あなたがequalsIgnoreCaseを使用することができ、すなわち敏感、裁判官の文字列は敏感であると考えているに等しく
- 順次対応する文字がに等しいかどうかを決定するためのループ
1 公共 静的 ボイドメイン(文字列[]引数){ 2 ストリングS = "12344321" ; 3 int型 L = s.length(); 4 のSystem.out.println(L / 2 ); 5 int型の結果= 1 ; 6 / / 中間から両側への比較を開始 7。 ため(INT I = 0; I <L / 2; I ++ ){ 8 IF(s.charAt(I)== s.charAt(LI-1 )){ 9 結果= 0 ; 10 } 他{ 11。 結果= 1 ; 12は BREAK ; // 必要が最後に確立された比較として、戻り0 =結果として長い比較サイクル時間を待つ、またはしたくない 13である } 14 } 15 IF(結果== 0 ){ 16 のSystem.out.println(「YESパリンドローム" ); 17 } 他{ 18で のSystem.out.println("パリンドロームではない」); 19 } 20 }
- 添加する他、例えば、中間解像度の文字列、およびその後の比較、