Java中String的concat方法分析

1、源码展示

    public String concat(String str) {
        int otherLen = str.length();
        if (otherLen == 0) {
            return this;
        }
        int len = value.length;
        char buf[] = Arrays.copyOf(value, len + otherLen);
        str.getChars(buf, len);
        return new String(buf, true);
    }

2、源码分析

  • value为String内部维护的一个字符数组,用来存储String的值
  • 首先判断需要拼接的字符串是否长度为0,若为0则返回预原字符串
  • 使用Arrays.copyOf方法将value复制到buf,且buf长度扩充为原字符串和新字符串长度之和
  • 使用String的getChars方法将str的字符全部复制到buf索引len(即原字符串之后),完成拼接
  • 返回新的字符串
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 34,822评论 18 399
  • Tip:笔者马上毕业了,准备开始 Java 的进阶学习计划。于是打算先从 String 类的源码分析入手,作为后面...
    石先阅读 12,112评论 16 58
  • 前言 最先接触编程的知识是在大学里面,大学里面学了一些基础的知识,c语言,java语言,单片机的汇编语言等;大学毕...
    oceanfive阅读 3,398评论 0 7
  • 年前看到一篇用柚子籽做盆栽的贴,看到图片美美哒,决定在办公室也动手弄个这样的小盆栽。 我把吃的柚子籽剥了壳密集地插...
    赋能姐在行动阅读 434评论 0 1
  • Day20/21 76+冯兰+冯兰 【书籍名称】《遇见未知的自己》 【阅读感受】1.在图书馆看到《遇见未知的自己》...
    蓝心Flany深圳js_510阅读 229评论 0 0

友情链接更多精彩内容