A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 闭眼就天黑 中级黑马   /  2013-12-18 23:04  /  2091 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

判断一个字符串是否是对称字符串
例如"abc"不是对称字符串,"aba"、"abba"、"aaa"、"mnanm"是对称字符串。。
{:soso_e109:}求大神,给个思路。最好给个参考代码。。{:soso_e115:}

评分

参与人数 1技术分 +1 收起 理由
FFF + 1 神马都是浮云

查看全部评分

7 个回复

倒序浏览
可以先得到这个字符串的相反字符串;reverseString();然后将新得到的字符串与原字符串比较内容equals()即可! 呵呵
回复 使用道具 举报
迪兰奇迹 发表于 2013-12-18 23:13
可以先得到这个字符串的相反字符串;reverseString();然后将新得到的字符串与原字符串比较内容equals()即可 ...

:#帮我写个可以吗
回复 使用道具 举报
我去 ,太懒了了吧!基本思路都已经说了!好吧,等会啊!
回复 使用道具 举报
可以用StringBuffer 的反转功能
回复 使用道具 举报
  1.         /**
  2.          * 判断字符串是否是对称字符串
  3.          * @param testStr 要判断的字符串
  4.          * @return  若为对称字符串返回true   若不是对称字符串返回false
  5.          */
  6.         public boolean test(String testStr) {
  7.                 for(int i=0;i<testStr.length();i++) {
  8.                         String bStr = testStr.substring(i, i+1);
  9.                         String aStr = testStr.substring(testStr.length()-i-1, testStr.length()-i);
  10.                         if(!aStr.equals(bStr)) {
  11.                                 return false;
  12.                         }
  13.                 }
  14.                 return true;
  15.         }
复制代码

评分

参与人数 1技术分 +1 收起 理由
FFF + 1 很给力!

查看全部评分

回复 使用道具 举报
public class ReverseTest {
        static String a= new String("acavbvaca");//提供两个字符串
        static String b= "abdhhabfgkjghakjskl";
        public static void main(String[] args) {
                        StringBuffer c = new StringBuffer();
                        if(a.equals(c.append(a).reverse().toString())){/*通过reverse方法将字符串反转,变为                                                            字符串后,通过equals()比较两个字符串内容是否相同,相同则对称*/
                                System.out.println("字符串a是对称的!");
                        }
                        else
                                System.out.println("字符串a不对称的!");
                       
                        if(b.equals(c.append(b).reverse().toString())){
                                System.out.println("字符串b是对称的!");
                        }
                        else
                                System.out.println("字符串b不对称的!");
               

        }

}

评分

参与人数 1黑马币 +6 收起 理由
FFF + 6 为什么代码不放代码框里呢?

查看全部评分

回复 使用道具 举报
不好意思,犯了个错,对于StringBuffer c 因为已经添加了字符串a,所以后边添加字符串b时,里边已经有内容了,所以添加字符串b时,需要添加到新的StringBuffer中去!
回复 使用道具 举报 1 0
您需要登录后才可以回帖 登录 | 加入黑马