算法-Java实现字符串的反转三种方式

使用 chatAt() 方法#

利用 String 的 CharAt 方法取出字符串中的各个字符

/**
 * 实现字符串的反转
 * @param str
 * @return String
 */
public static String reverse(String str) {
    StringBuilder new_str = new StringBuilder();
    for (int i = str.length() - 1; i >= 0; i--) {
        new_str.append(str.charAt(i));
    }
    return new_str.toString();
}

转为数组后拼接字符串#

利用 String 的 toCharArray 方法先将字符串转化为 char 类型数组,然后将各个字符进行重新拼接。

/**
 * 实现字符串的反转
 * @param str
 * @return String
 */
public static String reverse(String str) {
    // 将字符串转为 char 类型数组
    char[] chars = str.toCharArray();
    StringBuilder new_str = new StringBuilder();
    // 从右到左重新拼接
    for (int i = chars.length - 1; i >= 0; i--) {
        new_str.append(chars[i]);
    }
    return new_str.toString();
}

StringBuilder 中的 reverse 成员方法#

利用 StringBuffer 或 StringBuilder 的 reverse 成员方法。

/**
 * 实现字符串的反转
 * @param str
 * @return String
 */
public static String reverse(String str) {
    StringBuilder new_str = new StringBuilder(str);
    return new_str.reverse().toString();
}
posted @   白日醒梦  阅读(179)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示
主题色彩