Java 字符串反转追加:命令行输入字符串,将反转后的字符串追加到原字符串末尾

本程序使用 Java 语言实现了一个功能:从命令行读入一个字符串,将其反转后追加到原字符串的尾部,并输出结果。例如输入 'XYZ',则输出 'XYZZYX'。

import java.util.Scanner;

public class ReverseString {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入字符串:");
        String str = scanner.nextLine(); // 从命令行读入字符串
        String reverseStr = reverse(str); // 反转字符串
        String result = str + reverseStr; // 将反转后的字符串追加到原字符串末尾
        System.out.println("反转后的字符串为:" + result); // 输出结果
    }

    // 反转字符串的方法
    public static String reverse(String str) {
        char[] chars = str.toCharArray(); // 将字符串转换为字符数组
        int left = 0;
        int right = chars.length - 1;
        while (left < right) { // 双指针交换字符
            char temp = chars[left];
            chars[left] = chars[right];
            chars[right] = temp;
            left++;
            right--;
        }
        return new String(chars); // 将字符数组转换为字符串并返回
    }
}

代码详解

  1. 从命令行读入字符串:

    • 使用 Scanner 类从 System.in 读取用户输入的字符串。
  2. 反转字符串:

    • 定义 reverse 方法,使用双指针交换字符的方式来实现字符串反转。
    • 将字符串转换为字符数组 char[] chars = str.toCharArray();
    • 使用两个指针 leftright 分别指向数组的首尾位置。
    • 使用 while 循环,当 left 小于 right 时,不断交换两个指针指向的字符,并移动指针,直到两个指针相遇。
    • 最后,将字符数组转换为字符串并返回。
  3. 追加反转后的字符串:

    • reverse 方法返回的反转后的字符串 reverseStr 追加到原字符串 str 的末尾,得到最终结果 result
  4. 输出结果:

    • result 输出到控制台。

代码示例

输入:

XYZ

输出:

反转后的字符串为:XYZZYX

本程序代码清晰简洁,注释详细,易于理解和学习。如果您有任何问题,请随时提出。

Java 字符串反转追加:命令行输入字符串,将反转后的字符串追加到原字符串末尾

原文地址: https://www.cveoy.top/t/topic/mKjh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录