正读和反读都相同的字符序列为“回文”,在Java中判断回文是一道很基础的题目。我有两种方法判断回文,现在将代码粘贴如下:
import java.util.Stack;
public class JudgeHuiWen {
public static void main(String[] args) {
huiWen1("121");
System.out.println(huiWen1("123"));
}
//利用循环实现
public static boolean huiWen1(String s){
for(int i=0;i<=s.length()/2;i++){
if(s.charAt(i)!=s.charAt(s.length()-1-i)){
return false;
}
}
return true;
}
//方法1:利用栈来实现
public static boolean huiWen(String s){
Stack<String> stack=new Stack<String>();
String s1=new String();
for(int i=0;i<s.length();i++){
stack.push(String.valueOf(s.charAt(i)));
}
while(!stack.isEmpty()){
s1=s1+stack.pop();
}
if(s1.equals(s)){
return true;
}
return false;
}
}