Java - 判断字符串是否是回文
Posted 爱穿新衣服的姑凉
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java - 判断字符串是否是回文相关的知识,希望对你有一定的参考价值。
首先,回文是指类似于“12345”,“abcdcba”的形式,即正念和反念都是一样的字符串
判断字符串是否是回文,这边介绍3种办法
- 将字符串翻转,判断翻转后的字符串和原字符串是否相等
1 public static void main(String[] args) { 2 String s="abcdcba"; 3 // 用StringBuilder的reverse方法将字符串反转 4 StringBuilder sb=new StringBuilder(s); 5 String afterReverse=sb.reverse().toString(); 6 //判断反转后的字符串与原字符串是否相等,可用compareTo,equals, 7 int isequal=afterReverse.compareTo(s); //若相等则输出0 8 if (isequal==0){ 9 System.out.println("是回文"); 10 }else 11 System.out.println("不是回文"); 12 }
注意:compareTo,equals判断字符串均考虑大小写,即大小写视为不想等,若需要不考虑大小写,则可以用equalsIgnoreCase
- for循环依次判断对应字符是否相等
1 public static void main(String[] args) { 2 String s="12344321"; 3 int l=s.length(); 4 System.out.println(l/2); 5 int result=1; 6 //从中间开始往两边比较 7 for (int i=0;i<l/2;i++){ 8 if (s.charAt(i)==s.charAt(l-i-1)){ 9 result=0; 10 }else{ 11 result=1; 12 break; //比较有一个不想等时需要跳出循环,否则只要最后一个比较成立,就会返回result=0 13 } 14 } 15 if (result==0){ 16 System.out.println("是回文"); 17 }else { 18 System.out.println("不是回文"); 19 } 20 }
- 其他待补充,例如将字符串从中间拆分,再比较,
以上是关于Java - 判断字符串是否是回文的主要内容,如果未能解决你的问题,请参考以下文章