您的位置:首页 >房产频道 > 要闻动态 >

append方法是用来做什么的(append方法)

导读 大家好,今天小六子来为大家解答以下的问题,关于append方法是用来做什么的,append方法这个很多人还不知道,现在让我们一起来看看吧!1、Ja

大家好,今天小六子来为大家解答以下的问题,关于append方法是用来做什么的,append方法这个很多人还不知道,现在让我们一起来看看吧!

1、Java中的append( )方法其实是创建了一个新的数组,扩大了长度,将需要添加的字符串给复制到这个新的数组中。

2、JAVA中Stringbuffer有append( )方法:而Stringbuffer是动态字符串数组,append( )是往动态字符串数组添加,跟“xxxx”+“yyyy”相当‘+’号。

3、跟String不同的是Stringbuffer是放一起的,String1+String2和***.append("yyyy")虽然打印效果一样,但在内存中表示却不一样、String1+String2 存在于不同的两个地址内存,***.append(Stringbuffer2)放再一起。

4、StringBuffer是线程安全的,多用于多线程。

5、扩展资料查看StringBuffer的append()方法如图所示代码:进入append方法@Overridepublic synchronized StringBuffer append(String str) {toStringCache = null;***.append(str);return this;}其中toStringCache是Cleared whenever the StringBuffer is modified.2、进入AbstractStringBuilder的append()方法public AbstractStringBuilder append(String str) {if (str == null)return appendNull();int len = ***.length();ensureCapacityInternal(count + len);***.getchars(0, len, value, count);count += len;return this;}如果参数str为空返回appendNull(); 该方法最终返回return this.3、进入ensureCapacityInternal()方法private void ensureCapacityInternal(int minimumCapacity) {// overflow-conscious codeif (minimumCapacity - ***.length > 0) {value = ***.copyof(value,newCapacity(minimumCapacity));}}copyOf(char[] original, int newLength)的方法查JDK帮助文档可知:复制指定的数组,复制具有指定的长度。

6、4、进入String的getChars()方法public void getChars(int srcBegin, int srcEnd, char dst[], int dstBegin) {//0,len=5,value=[hello],count=5if (srcBegin < 0) {throw new StringIndexOutOfBoundsException(srcBegin);}if (srcEnd > ***.length) {throw new StringIndexOutOfBoundsException(srcEnd);}if (srcBegin > srcEnd) {throw new StringIndexOutOfBoundsException(srcEnd - srcBegin);}***.arraycopy(value, srcBegin, dst, dstBegin, srcEnd - srcBegin);}5、最终调用的是***.arraycopy的方法:public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)/*src - 源数组。

7、srcPos - 源数组中的起始位置。

8、dest - 目标数组。

9、destPos - 目的地数据中的起始位置。

10、length - 要复制的数组元素的数量。

11、 */***.arraycopy([world], 0, [hello], 5, 5);将指定源数组中的数组从指定位置复制到目标数组的指定位置。

12、参考资料:百度百科-append。

本文分享完毕,希望对你有所帮助。

免责声明:本文由用户上传,如有侵权请联系删除!