编写程序从命令行读入一个字符串将其反串追加到字符串的尾部并输出例如在命令行输入XYZ则输出结果为XYZZYX。jAVA详细注释
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); // 将字符数组转换为字符串并返回
}
}
首先,我们需要从命令行读入一个字符串,这里使用 Scanner 类来实现。然后,我们需要将字符串反转,这里定义了一个 reverse 方法来实现。最后,我们将反转后的字符串追加到原字符串末尾并输出结果。
在 reverse 方法中,我们使用双指针交换字符的方式来实现字符串反转。具体地,我们将字符串转换为字符数组,然后使用左右指针指向字符数组的首尾位置,依次交换两个位置上的字符,直到左右指针相遇为止。最后,我们将字符数组转换为字符串并返回。
完整的代码如上所示,其中包含了详细的注释。
原文地址: https://www.cveoy.top/t/topic/bimJ 著作权归作者所有。请勿转载和采集!