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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 何堂红 中级黑马   /  2014-6-11 23:12  /  1134 人查看  /  7 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 何堂红 于 2014-6-12 00:32 编辑

* 题目:1、 判断一个字符串是否是对称字符串,例如"abc"不是对称字符串,"aba"、"abba"、"aaa"、"mnanm"是对称字符串
对于这个题目,我没思路啊

7 个回复

倒序浏览
我自己多研究了下,已经解决了,还是深夜的效率高啊,呵呵
  1. import java.util.Scanner;

  2. public class Test01 {

  3.         /**
  4.          * 题目:1、 判断一个字符串是否是对称字符串,例如"abc"不是对称字符串,"aba"、"abba"、"aaa"、"mnanm"是对称字符串
  5.          *
  6.          * @param args
  7.          */
  8.         public static void main(String[] args) {
  9.                 //接收键盘输入
  10.                 Scanner sc =new Scanner(System.in);
  11.                 System.out.println("请输入要判定对称的字符串:");
  12.                 String line = sc.nextLine();
  13.                 //调用对称判定的方法,将接收的字符串作为参数传递
  14.                 boolean b = duiChenString(line);
  15.                 System.out.println(b);
  16.         }

  17.         public static boolean duiChenString(String str) {
  18.                 boolean result = true;
  19.                 char[] ch = str.toCharArray();                                        //将字符串转换为字符数组
  20.                 for (int i = 0; i <= ch.length / 2; i++) {
  21.                         if (ch[i] != ch[ch.length - i - 1]) {                //将第i个元素与倒数第i个元素进行比较
  22.                                 result = false;
  23.                         }
  24.                 }
  25.                 return result;
  26.         }

  27. }
复制代码
回复 使用道具 举报 2 0
刚自己也写了 但楼上的方法还是简单些,所以就不写了。

result = false;
这段代码可以改成这样  减少了判断次数

{result = false;
break;
}
回复 使用道具 举报
唐坚 发表于 2014-6-12 00:59
刚自己也写了 但楼上的方法还是简单些,所以就不写了。

result = false;

嗯,谢谢
回复 使用道具 举报
来看看  ,学习了 !
回复 使用道具 举报
uuuuuuuuuuuuuuuuu
回复 使用道具 举报
何堂红 发表于 2014-6-12 00:31
我自己多研究了下,已经解决了,还是深夜的效率高啊,呵呵

深夜就是程序员的白天的
回复 使用道具 举报
焦国军 发表于 2014-6-12 23:16
深夜就是程序员的白天的

确实是的~~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马