编写一个java程序,接收用户输入的字符串,判断该字符串是否为回文字符串(即正向和反向读取相同),并输出相应的提示信息。
时间: 2024-02-12 14:02:22 浏览: 86
好的,以下是您需要的Java代码:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = scanner.nextLine();
if (isPalindrome(str)) {
System.out.println("是回文字符串");
} else {
System.out.println("不是回文字符串");
}
}
public static boolean isPalindrome(String str) {
int i = 0, j = str.length() - 1;
while (i < j) {
if (str.charAt(i) != str.charAt(j)) {
return false;
}
i++;
j--;
}
return true;
}
}
```
解释一下代码:
首先,我们使用 `Scanner` 类接收用户输入的字符串。然后,我们调用 `isPalindrome` 方法判断该字符串是否为回文字符串。
`isPalindrome` 方法使用了双指针的思想,从字符串的两端开始比较字符是否相等,如果不相等则说明不是回文字符串,直接返回 `false`,否则继续比较。最终,如果整个字符串都比较完毕,说明是回文字符串,返回 `true`。
最后,根据 `isPalindrome` 方法的返回值输出相应的提示信息。
阅读全文