判断一个字符串是否是对称字符串?刚看到这么一道题,觉得非常简单,事实确实如此,那么如何完成这道题呢???
首先我们要明确一点,既然是判断字符串的对称,那么必须要先判断相对位置的字符是否匹配?如果匹配就返回一个TRUE,否则返回FALSE,那么问题就迎刃而解了!当然解决这问题的方法很多,但我主要从以下思想完成:
1.将字符串转化成字符数组
2.利用for循环遍历判断字符数组,如果相对位置相互匹配,则返回TRUE,否则FALSE--------->(这一步是关键)
3.输入字符串,完成测试
相关代码如下:
package com.itheima;
import java.util.Scanner;
/**
*判断一个字符串是否是对称字符串,例如"abc"不是对称字符串,"aba"、"abba"、"aaa"、"mnanm"是对称字符串
* @author 黄贤亨
*
*/
public class Test4 {
/**
* @param args
*/
public static void main(String[] args) {
//实例化Scanner对象
Scanner s=new Scanner(System.in);
//打印提示
System.out.println("请输入一个字符串");
//输入字符串
String str=s.next();
System.out.println(str+"是否对称?"+isSymmetry(str));
}
//创建一个可以接收字符串作为参数的方法,在方法中封装了判断该参数是否是对称字符串,如果是,则返回TRUE,否则返回FALSE
public static boolean isSymmetry(String str){
//将字符串转化为字符数组
char[]ch=str.toCharArray();
//循环判断字符数组前后是否一致
for(int x=0;x<ch.length;x++){
if(ch[x]!=ch[ch.length-x-1]){
return false;
}
}
return true;
}
}
完成了这道题,发现原来字符串和字符数组之间的转换也是常用的,字符串转化为字符数组格式为:字符串.toCharArray(),理解了这道题,发现我们还可以利用这道题的思想来完成回文数的判断等,可谓举一板三啊!!!
------- android培训、 java培训、期待与您交流! ----------