JAVA 100道题目(2)

2.创建一个程序,接受用户输入的字符串并检查它是否为回文。

以下是一个简单的Java程序,它接受用户输入的字符串并检查该字符串是否为回文(正读和反读都相同的字符串):

复制代码

java复制代码

|---|------------------------------------------------------|
| | import java.util.Scanner; |
| | |
| | public class PalindromeChecker { |
| | public static void main(String[] args) { |
| | Scanner scanner = new Scanner(System.in); |
| | |
| | // 提示用户输入字符串 |
| | System.out.print("请输入一个字符串: "); |
| | String input = scanner.nextLine(); |
| | |
| | // 检查字符串是否为回文 |
| | boolean isPalindrome = isPalindrome(input); |
| | |
| | // 输出结果 |
| | if (isPalindrome) { |
| | System.out.println("输入的字符串是回文。"); |
| | } else { |
| | System.out.println("输入的字符串不是回文。"); |
| | } |
| | |
| | // 关闭Scanner对象 |
| | scanner.close(); |
| | } |
| | |
| | // 检查字符串是否为回文的辅助方法 |
| | private static boolean isPalindrome(String str) { |
| | int left = 0; |
| | int right = str.length() - 1; |
| | |
| | while (left < right) { |
| | if (str.charAt(left) != str.charAt(right)) { |
| | return false; |
| | } |
| | left++; |
| | right--; |
| | } |
| | return true; |
| | } |
| | } |

在这个程序中,我们定义了一个名为isPalindrome的辅助方法,它接受一个字符串作为参数并检查该字符串是否为回文。main方法则负责与用户交互,接受用户输入的字符串,并调用isPalindrome方法来检查结果。

要运行此程序,请按照以下步骤操作:

  1. 将上面的代码保存到一个名为PalindromeChecker.java的文件中。

  2. 使用Java编译器编译代码:

    复制代码

    bash复制代码

    |---|--------------------------------|
    | | javac PalindromeChecker.java |

  3. 运行编译后的程序:

    复制代码

    bash复制代码

    |---|--------------------------|
    | | java PalindromeChecker |

  4. 按照程序提示输入一个字符串。

  5. 查看程序输出的结果,判断输入的字符串是否为回文。

相关推荐
yaoxin5211232 小时前
434. Java 日期时间 API - Period 基于日期的时间段
java·开发语言·python
凡人叶枫3 小时前
Effective C++ 条款30:透彻了解 inlining 的里里外外
linux·开发语言·c++·嵌入式开发·effective c++
学逆向的3 小时前
C++纯虚函数
开发语言·c++·网络安全
何极光3 小时前
IDEA集成Maven
java·maven·intellij-idea
程序员二叉3 小时前
【JUC】ThreadLocal底层原理|内存泄漏|弱引用|跨线程传递方案
java·开发语言·面试·职场和发展·juc
程序员二叉3 小时前
【JUC】线程池全套深度详解|参数|流程|拒绝策略|调优|异常处理
java·开发语言·jvm·算法·面试·juc
老马识途2.04 小时前
在AI的帮助下理解spring的启动过程
java·前端·spring
青山木4 小时前
Hot 100 --- 轮转数组
java·数据结构·算法
凡人叶枫4 小时前
Effective C++ 条款22:将成员变量声明为 private
linux·开发语言·c++
Qt程序员4 小时前
掌握 Linux 内核调度:从原理到实现(进程篇)
java·开发语言