ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

StringBuilder的构造方法和append方法

2022-07-05 16:32:41  阅读:185  来源: 互联网

标签:构造方法 StringBuilder System str sb public append


Java中StringBuilder的构造方法

StringBuilder构造方法:
public StringBuilder(): 创建一个空白可变的字符串对象,不含有任何内容
public StringBuilder(): 根据字符串内容,来创建可变字符串对象

//链式编程

sb.append("hello").append("world").append("java").append(100);

System.out.println("sb".+sb);

//public StringBuilder reverse():返回相反的字符序列

sb.reverse();

System.out.println("sb:"+sb);

public static void main(String[] args) {
//public StringBuilder(): 创建一个空白可变的字符串对象,不含有任何内容
StringBuilder sb =new StringBuilder();
System.out.println("sb:"+sb);
System.out.println("sb.length()"+sb.length());

//public StringBuilder(): 根据字符串内容,来创建可变字符串对象
StringBuilder sb2 =new StringBuilder("hello");
System.out.println("sb2:"+sb);
System.out.println("sb2.length()"+sb2.length());
}

 

append() 方法

append(String str) 的操作如下:

  • 判断 str 是否为空,若为空,则直接调用 appendNull() 并返回;
  • 计算(count + len)追加 str 之后的长度,并确保存储字符序列的字符数组足够长;
  • str.getChars() 方法将 str 复制到字符数组 value(存储了 StringBuffer 字符序列);
  • 返回当前对象。

ensureCapacityInternal() 方法会检查字符数组 value 的容量是否足以存储追加之后的字符序列,不足则会进行扩容。count 表示 value 中下一个可用位置的下标

public AbstractStringBuilder append(String str) {
    if (str == null)
        return appendNull();
    int len = str.length();
    ensureCapacityInternal(count + len);
    str.getChars(0, len, value, count);
    count += len;
    return this;
}

 

标签:构造方法,StringBuilder,System,str,sb,public,append
来源: https://www.cnblogs.com/xuche/p/16446933.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有