看到题目,第一想法是将输入的字符串转为数组
然后将数组长度除以2,判断余数为0,则直接不是回文串,不为0,用两个for循环将数组前后一一对比然后判断
方法两个 1、split()方法一般用于分割,不过可以使用空字符来分割,较为繁琐
String a = "abcde"; String[] b = a.split("");
输出
2、调用String类提供的toCharArray()方法String a = "abcde"; char[] c = a.toCharArray();
输出
全部代码import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); String a = input.next(); int num = 0; char[] b = a.toCharArray();//字符串转为数组 int m = b.length/2; int n = b.length%2; if (n == 0)//判断数组长度的是否为偶数 System.out.println("no"); else{//两个for循环 for (int i = 0;i < m;i++){ for (int j = b.length - 1;j >= b.length-m;j--){ if (b[i] == b[j]){ num++; } } } if (num == m) System.out.println("yes"); else System.out.println("no"); } } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)