当前位置:首页 > Java

Java String如何逆序

2026-03-23 14:48:15Java

方法一:使用StringBuilder的reverse方法

Java中的StringBuilder类提供了reverse()方法,可以方便地实现字符串逆序。

String original = "Hello";
String reversed = new StringBuilder(original).reverse().toString();
System.out.println(reversed);  // 输出: olleH

方法二:使用字符数组手动逆序

通过将字符串转换为字符数组,然后交换字符位置实现逆序。

String original = "World";
char[] chars = original.toCharArray();
int left = 0, right = chars.length - 1;
while (left < right) {
    char temp = chars[left];
    chars[left] = chars[right];
    chars[right] = temp;
    left++;
    right--;
}
String reversed = new String(chars);
System.out.println(reversed);  // 输出: dlroW

方法三:使用递归

递归方法可以逆序处理字符串,但需要注意栈溢出风险。

public static String reverseRecursive(String str) {
    if (str.isEmpty()) {
        return str;
    }
    return reverseRecursive(str.substring(1)) + str.charAt(0);
}

String original = "Java";
String reversed = reverseRecursive(original);
System.out.println(reversed);  // 输出: avaJ

方法四:使用Java 8的Stream API

利用Stream的collectStringBuilder实现逆序。

String original = "Stream";
String reversed = original.chars()
    .mapToObj(c -> (char)c)
    .collect(StringBuilder::new, StringBuilder::append, StringBuilder::append)
    .reverse()
    .toString();
System.out.println(reversed);  // 输出: maertS

方法五:使用Apache Commons Lang库

如果项目中已引入Apache Commons Lang,可以使用StringUtils.reverse()方法。

Java String如何逆序

import org.apache.commons.lang3.StringUtils;

String original = "Apache";
String reversed = StringUtils.reverse(original);
System.out.println(reversed);  // 输出: ehcapA

注意事项

  • 对于空字符串或null输入,方法一至四会直接处理,而方法五的StringUtils.reverse()会安全返回null
  • 方法三的递归实现不适合处理超长字符串,可能导致栈溢出。
  • 方法二的手动逆序适用于需要自定义逆序逻辑的场景。

标签: 逆序Java
分享给朋友:

相关文章

Java如何换行

Java如何换行

在Java中换行的几种方法 在Java中,换行可以通过多种方式实现,具体取决于使用场景和需求。以下是几种常见的换行方法: 使用\n转义字符 \n是换行符的转义字符,可以在字符串中直接使用: Sy…

shell 如何调用Java

shell 如何调用Java

在Shell中调用Java程序 Shell脚本可以直接调用Java程序,通过java命令执行编译后的.class文件或打包的.jar文件。以下是具体实现方法: 编译Java源代码 在调用Java程序…

Java如何添加事件

Java如何添加事件

添加事件的基本方法 在Java中,事件处理通常涉及事件源、事件监听器和事件对象。以下是实现事件处理的基本步骤: 定义事件监听器接口 事件监听器是一个接口,定义了处理特定事件的方法。例如,Action…

如何将Java打包成.jar

如何将Java打包成.jar

使用JDK的jar命令打包 确保JDK已安装并配置环境变量。在项目根目录(包含编译后的.class文件)执行以下命令: jar cvf YourJarName.jar * 若需指定主类(可执行jar…

js实现查找逆序数

js实现查找逆序数

逆序数概念 逆序数指在一个序列中,前面的元素大于后面的元素的对数。例如序列 [2, 4, 1, 3, 5] 中,逆序对有 (2,1)、(4,1)、(4,3),逆序数为 3。 暴力法实现 直接…

Java如何实现异步处理

Java如何实现异步处理

异步处理的实现方式 Java中实现异步处理有多种方法,包括使用多线程、Future、CompletableFuture以及响应式编程框架等。以下是几种常见的实现方式: 使用多线程 通过创建新线程执行…