StringBuffer的常用方法(来自于JDK1.8API)

 

注意:

  • 线程安全,可变的字符序列。 字符串缓冲区就像一个String ,但可以修改。 在任何时间点,它包含一些特定的字符序列,但可以通过某些方法调用来更改序列的长度和内容。
  • 字符串缓冲区可以安全地被多个线程使用。 这些方法在必要时进行同步,以便任何特定实例上的所有操作都按照与所涉及的各个线程所执行的方法调用顺序一致的顺序发生。
  • StringBuffer的主要StringBufferappendinsert方法,它们被重载以便接受任何类型的数据。 每个都有效地将给定的数据转换为字符串,然后将该字符串的字符附加或插入到字符串缓冲区。 append方法总是在缓冲区的末尾添加这些字符; insert方法将insert添加到指定点。
  • 一般情况下,如果某人是指的一个实例StringBuffer ,则sb.append(x)具有相同的效果sb.insert(sb.length(), x)
  • 每当涉及源序列(例如从源序列追加或插入)的操作发生时,该类仅在执行操作的字符串缓冲器上进行同步,而不在源上。 请注意,虽然StringBuffer被设计为可以安全地从多个线程并发使用,但如果构造函数或appendinsert操作被传递通过线程共享的源序列,则调用代码必须确保该操作具有一致且不变的视图在操作期间的源序列。 呼叫者通过使用不可变的源序列,或者不跨线程共享源序列,可以在呼叫期间持有锁来满足这一点。
  • 每个字符串缓冲区都有一个容量。 只要字符串缓冲区中包含的字符序列的长度不超过容量,就不必分配新的内部缓冲区数组。 如果内部缓冲区溢出,则会自动变大。
  • 除非另有说明,否则将null参数传递给null中的构造函数或方法将导致抛出NullPointerException
  • 从版本JDK 5开始,这个类别已经被一个等级类补充了,这个类被设计为使用一个线程StringBuilderStringBuilder应该使用StringBuilder类,因为它支持所有相同的操作,但它更快,因为它不执行同步。
  • 构造方法摘要

    • 构造方法  
      Constructor and Description
      StringBuffer()

      构造一个没有字符的字符串缓冲区,初始容量为16个字符。

      StringBuffer(CharSequence seq)

      构造一个包含与指定的相同字符的字符串缓冲区 CharSequence

      StringBuffer(int capacity)

      构造一个没有字符的字符串缓冲区和指定的初始容量。

      StringBuffer(String str)

      构造一个初始化为指定字符串内容的字符串缓冲区

  • 方法摘要

    • StringBufferappend(boolean b)

      boolean参数的字符串表示附加到序列中。

      StringBufferappend(char c)

      char参数的字符串表示附加到此序列。

      StringBufferappend(char[] str)

      char数组参数的字符串表示附加到此序列。

      StringBufferappend(char[] str, int offset, int len)

      char数组参数的子阵列的字符串表示附加到此序列。

      StringBufferappend(CharSequence s)

      追加指定的 CharSequence到这个序列。

      StringBufferappend(CharSequence s, int start, int end)

      追加指定的序列 CharSequence到这个序列。

      StringBufferappend(double d)

      double参数的字符串表示附加到此序列。

      StringBufferappend(float f)

      float参数的字符串表示附加到此序列。

      StringBufferappend(int i)

      int参数的字符串表示附加到此序列。

      StringBufferappend(long lng)

      long参数的字符串表示附加到此序列。

      StringBufferappend(Object obj)

      追加 Object参数的字符串表示。

      StringBufferappend(String str)

      将指定的字符串附加到此字符序列。

      StringBufferappend(StringBuffer sb)

      将指定 StringBuffer这个序列。

      StringBufferappendCodePoint(int codePoint)

      codePoint参数的字符串表示法附加到此序列。

      intcapacity()

      返回当前容量。

      charcharAt(int index)

      返回 char在指定索引在这个序列值。

      intcodePointAt(int index)

      返回指定索引处的字符(Unicode代码点)。

      intcodePointBefore(int index)

      返回指定索引之前的字符(Unicode代码点)。

      intcodePointCount(int beginIndex, int endIndex)

      返回此序列指定文本范围内的Unicode代码点数。

      StringBufferdelete(int start, int end)

      删除此序列的子字符串中的字符。

      StringBufferdeleteCharAt(int index)

      删除 char在这个序列中的指定位置。

      voidensureCapacity(int minimumCapacity)

      确保容量至少等于规定的最小值。

      voidgetChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)

      字符从该序列复制到目标字符数组 dst

      intindexOf(String str)

      返回指定子字符串第一次出现的字符串内的索引。

      intindexOf(String str, int fromIndex)

      返回指定子串的第一次出现的字符串中的索引,从指定的索引开始。

      StringBufferinsert(int offset, boolean b)

      在此序列中插入 boolean参数的字符串表示形式。

      StringBufferinsert(int offset, char c)

      在此序列中插入 char参数的字符串表示形式。

      StringBufferinsert(int offset, char[] str)

      在此序列中插入 char数组参数的字符串表示形式。

      StringBufferinsert(int index, char[] str, int offset, int len)

      在此序列中插入 str数组参数的子阵列的字符串表示形式。

      StringBufferinsert(int dstOffset, CharSequence s)

      将指定的 CharSequence这个序列。

      StringBufferinsert(int dstOffset, CharSequence s, int start, int end)

      将指定的子序列 CharSequence这个序列。

      StringBufferinsert(int offset, double d)

      在此序列中插入 double参数的字符串表示形式。

      StringBufferinsert(int offset, float f)

      在此序列中插入 float参数的字符串表示形式。

      StringBufferinsert(int offset, int i)

      将第二个 int参数的字符串表示插入到此序列中。

      StringBufferinsert(int offset, long l)

      在此序列中插入 long参数的字符串表示形式。

      StringBufferinsert(int offset, Object obj)

      Object参数的字符串表示插入到此字符序列中。

      StringBufferinsert(int offset, String str)

      将字符串插入到此字符序列中。

      intlastIndexOf(String str)

      返回指定子字符串最右边出现的字符串内的索引。

      intlastIndexOf(String str, int fromIndex)

      返回指定子字符串最后一次出现的字符串中的索引。

      intlength()

      返回长度(字符数)。

      intoffsetByCodePoints(int index, int codePointOffset)

      返回此序列中与 indexcodePointOffset代码点偏移的索引。

      StringBufferreplace(int start, int end, String str)

      用指定的String中的字符替换此序列的子字符串中的 String

      StringBufferreverse()

      导致该字符序列被序列的相反代替。

      voidsetCharAt(int index, char ch)

      指定索引处的字符设置为 ch

      voidsetLength(int newLength)

      设置字符序列的长度。

      CharSequencesubSequence(int start, int end)

      返回一个新的字符序列,该序列是该序列的子序列。

      Stringsubstring(int start)

      返回一个新的 String ,其中包含此字符序列中当前包含的字符的子序列。

      Stringsubstring(int start, int end)

      返回一个新的 String ,其中包含此序列中当前包含的字符的子序列。

      StringtoString()

      返回表示此顺序中的数据的字符串。

      voidtrimToSize()

      尝试减少用于字符序列的存储。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值