一、题目描述
从键盘输入一个字符串,判断是否是回文,例如 12321 就是一个回文,123456不是一个回文。
二、解题思路
首先我们要明白什么是回文字符串,所谓的回文字符串就是正着读和反着读是一样的,所以我们可以将字符串转换成字符串数组,然后折半比对,即首尾比对,如果有不一样的则判定不是回文字符串,否则判定是回文字符串.
三、代码示例
package com.easy.algorithm;
import java.util.Scanner;
/**
* @ClassName Test02
* @Description 输入一段字符串,判断是否是回文,例如 12321 就是一个回文,12322 不是一个回文
* @Author wk
* @Date 2021/11/12 22:29
* @Version 1.0
*/
public class Test02 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入一段字符串:");
String str1 = input.next();
// 字符串转字符数组
char str2[] = str1.toCharArray();
// 如果 flag 为 true 则是回文,否则不是 回文
boolean flag = true;
for (int i = 0; i < (str2.length / 2); i++) {
if (str2[i] != str2[str2.length - i - 1]) {
flag = false;
break;
}
}
if (flag) {
System.out.println(str1 + ",是回文");
} else {
System.out.println(str1 + ",不是回文");
}
}
}
四、测评结果