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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. import java.util.Scanner;

  2. /**
  3. *        判断一个字符串是否是对称字符串
  4. */
  5. public class StringDemo {       
  6.         public static void main(String[] args) {
  7.                 // 使用键盘录入获取字符串
  8.                 Scanner sc = new Scanner(System.in);
  9.                 // 友情提示
  10.                 System.out.println("请输入一个字符串");
  11.                 // 接收录入的字符串
  12.                 String str = sc.nextLine();
  13.                 // 调用判断方法
  14.                 duiChen(str);
  15.         }
  16.         // 判断是不是对称字符串方法
  17.         public static void duiChen(String str){
  18.                 boolean flag = true;
  19.                 for(int i = 0, j = str.length()-1; i <= j; i++, j--){
  20.                         // 如果第一个角标值和最后一个角标值不一样,就跳出循环
  21.                         if(str.charAt(i) != str.charAt(j)){
  22.                                 flag = false;
  23.                                 // 跳出循环
  24.                                 break;
  25.                         }
  26.                 }
  27.                 System.out.println(str + (flag ? "是对称字符串" : "不是对称字符串"));
  28.         }
  29. }
复制代码


6 个回复

倒序浏览
很棒啊 学习到了
回复 使用道具 举报
我新研究的方法

  1. public class IsSymmetry {
  2.         public static void main(String[] args) {
  3.                 boolean flag = isSymmetry("abba");
  4.                 if(flag)
  5.                         System.out.println("是对称的!");
  6.                 else
  7.                         System.out.println("不是对称的!");
  8.         }

  9.         private static boolean isSymmetry(String string) {
  10.                 if(string.length()<=1){
  11.                         return false;
  12.                 }
  13.                 boolean flag = string.length()%2==0?false:true;
  14.                 int x = string.length()/2;
  15.                 if(flag){
  16.                         return string.substring(0,x).equals(new StringBuilder(string.substring(x+1,string.length())).reverse().toString());
  17.                 }
  18.                 else{
  19.                         return string.substring(0,x).equals(new StringBuilder(string.substring(x,string.length())).reverse().toString());
  20.                 }
  21.         }
  22. }
复制代码
回复 使用道具 举报
字符串反转后,看是否与原字符串相等、
回复 使用道具 举报
Hi.。 发表于 2015-12-16 18:05
字符串反转后,看是否与原字符串相等、

厉害
回复 使用道具 举报
已经瞌睡了, 睡觉了~~~~
回复 使用道具 举报
赞赞赞
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马