Android
java.lang
public final class

java.lang.StringBuilder

java.lang.Object
java.lang.StringBuilder Serializable Appendable CharSequence

A modifiable sequence of characters for use in creating and modifying Strings. This class is intended as a direct replacement of StringBuffer for non-concurrent use; unlike StringBuffer this class is not synchronized for thread safety.

The majority of the modification methods on this class return StringBuilder, so that, like StringBuffers, they can be used in chaining method calls together. For example, new StringBuilder("One should ").append("always strive ").append("to achieve Harmony").

Summary

Public Constructors

            StringBuilder()

Constructs an instance with an initial capacity of 16.

            StringBuilder(int capacity)

Constructs an instance with a specified capacity.

            StringBuilder(CharSequence seq)

Constructs an instance that's populated by a CharSequence.

            StringBuilder(String str)

Constructs an instance that's populated by a String.

Public Methods

          StringBuilder  append(double d)

Appends the String representation of the double value passed.

          StringBuilder  append(CharSequence csq)

Appends the String representation of the CharSequence value passed.

          StringBuilder  append(long lng)

Appends the String representation of the long value passed.

          StringBuilder  append(int i)

Appends the String representation of the int value passed.

          StringBuilder  append(boolean b)

Appends the String representation of the boolean value passed.

          StringBuilder  append(Object obj)

Appends the String representation of the Object value passed.

          StringBuilder  append(char c)

Appends the String representation of the char value passed.

          StringBuilder  append(char[] ch)

Appends the String representation of the char[] value passed.

          StringBuilder  append(String str)

Appends the contents of the String.

          StringBuilder  append(float f)

Appends the String representation of the float value passed.

          StringBuilder  append(char[] str, int offset, int len)

Appends the String representation of the subset of the char[] value passed.

          StringBuilder  append(CharSequence csq, int start, int end)

Appends the String representation of the subsequence of the CharSequence value passed.

          StringBuilder  append(StringBuffer sb)

Appends the contents of the StringBuffer.

          StringBuilder  appendCodePoint(int codePoint)

Appends the encoded Unicode code point to this object.

          int  capacity()
Returns the number of characters this StringBuffer can hold without growing.
          char  charAt(int index)

Retrieves the character at the index.

          int  codePointAt(int index)

Retrieves the Unicode code point value at the index.

          int  codePointBefore(int index)

Retrieves the Unicode code point value that precedes the index.

          int  codePointCount(int beginIndex, int endIndex)

Calculates the number of Unicode code points between beginIndex and endIndex.

          StringBuilder  delete(int start, int end)

Deletes a sequence of characters within this object, shifts any remaining characters to the left and adjusts the length() of this object.

          StringBuilder  deleteCharAt(int index)

Deletes a single character within this object, shifts any remaining characters to the left and adjusts the length() of this object.

          void  ensureCapacity(int min)

Ensures that this object has a minimum capacity available before requiring the internal buffer to be enlarged.

          void  getChars(int start, int end, char[] dest, int destStart)

Copies the requested sequence of characters to be copied to the char[] passed.

          int  indexOf(String subString, int start)
Searches in this StringBuffer for the index of the specified character.
          int  indexOf(String string)
Searches in this StringBuffer for the first index of the specified character.
          StringBuilder  insert(int offset, Object obj)

Inserts the String representation of the Object value passed into this object at the offset passed.

          StringBuilder  insert(int offset, String str)

Inserts the String value passed into this object at the offset passed.

          StringBuilder  insert(int offset, char[] ch)

Inserts the String representation of the char[] value passed into this object at the offset passed.

          StringBuilder  insert(int offset, boolean b)

Inserts the String representation of the boolean value passed into this object at the offset passed.

          StringBuilder  insert(int offset, double d)

Inserts the String representation of the double value passed into this object at the offset passed.

          StringBuilder  insert(int offset, char c)

Inserts the String representation of the char value passed into this object at the offset passed.

          StringBuilder  insert(int offset, float f)

Inserts the String representation of the float value passed into this object at the offset passed.

          StringBuilder  insert(int offset, int i)

Inserts the String representation of the int value passed into this object at the offset passed.

          StringBuilder  insert(int offset, CharSequence s)

Inserts the String representation of the CharSequence value passed into this object at the offset passed.

          StringBuilder  insert(int offset, CharSequence s, int start, int end)

Inserts the String representation of the subsequence of the CharSequence value passed into this object at the offset passed.

          StringBuilder  insert(int offset, char[] str, int strOffset, int strLen)

Inserts the String representation of the subsequence of the char[] value passed into this object at the offset passed.

          StringBuilder  insert(int offset, long l)

Inserts the String representation of the long value passed into this object at the offset passed.

          int  lastIndexOf(String string)
Searches in this StringBuffer for the last index of the specified character.
          int  lastIndexOf(String subString, int start)
Searches in this StringBuffer for the index of the specified character.
          int  length()

The current length of this object.

          int  offsetByCodePoints(int index, int codePointOffset)

Returns the index within this object that is offset from index by codePointOffset code points.

          StringBuilder  replace(int start, int end, String str)

Replaces the indicated subsequence of this object with the String passed.

          StringBuilder  reverse()

Reverses the contents of this object.

          void  setCharAt(int index, char ch)

Sets the character at the index in this object.

          void  setLength(int length)

Sets the current length to a new value.

          CharSequence  subSequence(int start, int end)

Returns a CharSequence of the subsequence of this object from the start index to the start index.

          String  substring(int start, int end)

Returns the String value of the subsequence of this object from the start index to the start index.

          String  substring(int start)

Returns the String value of the subsequence of this object from the start index to the current end.

          String  toString()
Returns the contents of this StringBuilder.
          void  trimToSize()

Trims off any extra capacity beyond the current length.

Methods inherited from class java.lang.Object
Methods inherited from interface java.lang.Appendable
Methods inherited from interface java.lang.CharSequence

Details

Public Constructors

public StringBuilder()

Constructs an instance with an initial capacity of 16.

See Also

public StringBuilder(int capacity)

Constructs an instance with a specified capacity.

Parameters

capacity The initial capacity to use.

Throws

NegativeArraySizeException if the capacity parameter is null.

See Also

public StringBuilder(CharSequence seq)

Constructs an instance that's populated by a CharSequence. The capacity of the new builder will be the length of the CharSequence plus 16.

Parameters

seq The CharSequence to copy into the builder.

Throws

NullPointerException if the seq parameter is null.

public StringBuilder(String str)

Constructs an instance that's populated by a String. The capacity of the new builder will be the length of the String plus 16.

Parameters

str The String to copy into the builder.

Throws

NullPointerException if the str parameter is null.

Public Methods

public StringBuilder append(double d)

Appends the String representation of the double value passed. The double value is converted to a String according to the rule defined by valueOf(double).

Parameters

d The double value to append to this object.

Returns

  • A reference to this object.

See Also

public StringBuilder append(CharSequence csq)

Appends the String representation of the CharSequence value passed. If the CharSequence is null, then the String "null" is appended.

Parameters

csq The CharSequence value to append to this object.

Returns

  • A reference to this object.

public StringBuilder append(long lng)

Appends the String representation of the long value passed. The long value is converted to a String according to the rule defined by valueOf(long).

Parameters

lng The long value to append to this object.

Returns

  • A reference to this object.

See Also

public StringBuilder append(int i)

Appends the String representation of the int value passed. The int value is converted to a String according to the rule defined by valueOf(int).

Parameters

i The int value to append to this object.

Returns

  • A reference to this object.

See Also

public StringBuilder append(boolean b)

Appends the String representation of the boolean value passed. The boolean value is converted to a String according to the rule defined by valueOf(boolean).

Parameters

b The boolean value to append to this object.

Returns

  • A reference to this object.

See Also

public StringBuilder append(Object obj)

Appends the String representation of the Object value passed. The Object value is converted to a String according to the rule defined by valueOf(Object).

Parameters

obj The Object value to append to this object.

Returns

  • A reference to this object.

See Also

public StringBuilder append(char c)

Appends the String representation of the char value passed. The char value is converted to a String according to the rule defined by valueOf(char).

Parameters

c The char value to append to this object.

Returns

  • A reference to this object.

See Also

public StringBuilder append(char[] ch)

Appends the String representation of the char[] value passed. The char[] value is converted to a String according to the rule defined by valueOf(char[]).

Parameters

ch The char[] value to append to this object.

Returns

  • A reference to this object.

See Also

public StringBuilder append(String str)

Appends the contents of the String. If the String passed is null, then the String "null" is appended.

Parameters

str The String to append to this object.

Returns

  • A reference to this object.

public StringBuilder append(float f)

Appends the String representation of the float value passed. The float value is converted to a String according to the rule defined by valueOf(float).

Parameters

f The float value to append to this object.

Returns

  • A reference to this object.

See Also

public StringBuilder append(char[] str, int offset, int len)

Appends the String representation of the subset of the char[] value passed. The char[] value is converted to a String according to the rule defined by valueOf(char[], int, int).

Parameters

str The char[] value to append to this object.
offset The inclusive offset index to begin copying from the str parameter.
len The number of character to copy from the str parameter.

Returns

  • A reference to this object.

public StringBuilder append(CharSequence csq, int start, int end)

Appends the String representation of the subsequence of the CharSequence value passed. If the CharSequence is null, then the String "null" is used to extract the subsequence from.

Parameters

csq The CharSequence value to append to this object.
start The beginning index of the subsequence.
end The ending index of the subsequence.

Returns

  • A reference to this object.

public StringBuilder append(StringBuffer sb)

Appends the contents of the StringBuffer. If the StringBuffer passed is null, then the StringBuffer "null" is appended.

Parameters

sb The StringBuffer to append to this object.

Returns

  • A reference to this object.

public StringBuilder appendCodePoint(int codePoint)

Appends the encoded Unicode code point to this object. The code point is converted to a char[] as defined by toChars(int).

Parameters

codePoint The Unicode code point to encode and append.

Returns

  • A reference to this object.

See Also

public int capacity()

Returns the number of characters this StringBuffer can hold without growing.

Returns

  • the capacity of this StringBuffer

public char charAt(int index)

Retrieves the character at the index.

Parameters

index index of character in this object to retrieve.

Returns

  • The char value.

Throws

IndexOutOfBoundsException if index is negative or greater than or equal to the current length().

public int codePointAt(int index)

Retrieves the Unicode code point value at the index.

Parameters

index The index to the char code unit within this object.

Returns

  • The Unicode code point value.

Throws

IndexOutOfBoundsException if index is negative or greater than or equal to length().

public int codePointBefore(int index)

Retrieves the Unicode code point value that precedes the index.

Parameters

index The index to the char code unit within this object.

Returns

  • The Unicode code point value.

Throws

IndexOutOfBoundsException if index is less than 1 or greater than length().

public int codePointCount(int beginIndex, int endIndex)

Calculates the number of Unicode code points between beginIndex and endIndex.

Parameters

beginIndex The inclusive beginning index of the subsequence.
endIndex The exclusive end index of the subsequence.

Returns

  • The number of Unicode code points in the subsequence.

Throws

IndexOutOfBoundsException if beginIndex is negative or greater than endIndex or endIndex is greater than length().

public StringBuilder delete(int start, int end)

Deletes a sequence of characters within this object, shifts any remaining characters to the left and adjusts the length() of this object.

Parameters

start The inclusive start index to begin deletion.
end The exclusive end index to stop deletion.

Returns

  • A reference to this object.

Throws

StringIndexOutOfBoundsException if start is less than zero, greater than the current length or greater than end.

public StringBuilder deleteCharAt(int index)

Deletes a single character within this object, shifts any remaining characters to the left and adjusts the length() of this object.

Parameters

index The index of the character to delete.

Returns

  • A reference to this object.

Throws

StringIndexOutOfBoundsException if index is less than zero or is greater than or equal to the current length.

public void ensureCapacity(int min)

Ensures that this object has a minimum capacity available before requiring the internal buffer to be enlarged. The general policy of this method is that if the minimumCapacity is larger than the current capacity(), then the capacity will be increased to the largest value of either the minimumCapacity or the current capacity multiplied by two plus two. Although this is the general policy, there is no guarantee that the capacity will change.

Parameters

min The new minimum capacity to set.

public void getChars(int start, int end, char[] dest, int destStart)

Copies the requested sequence of characters to be copied to the char[] passed.

Parameters

start The inclusive start index of the characters to copy from this object.
end The exclusive end index of the characters to copy from this object.
dest The char[] to copy the characters to.
destStart The inclusive start index of the dest parameter to begin copying to.

Throws

IndexOutOfBoundsException if the start is negative, the destStart is negative, the start is greater than end, the end is greater than the current length() or destStart + end - begin is greater than dest.length.

public int indexOf(String subString, int start)

Searches in this StringBuffer for the index of the specified character. The search for the character starts at the specified offset and moves towards the end.

Parameters

subString the string to find
start the starting offset

Returns

  • the index in this StringBuffer of the specified character, -1 if the character isn't found

public int indexOf(String string)

Searches in this StringBuffer for the first index of the specified character. The search for the character starts at the beginning and moves towards the end.

Parameters

string the string to find

Returns

  • the index in this StringBuffer of the specified character, -1 if the character isn't found

public StringBuilder insert(int offset, Object obj)

Inserts the String representation of the Object value passed into this object at the offset passed. The Object value is converted to a String according to the rule defined by valueOf(Object).

Parameters

offset The index of this object to insert the value.
obj The Object value to insert into this object.

Returns

  • A reference to this object.

Throws

StringIndexOutOfBoundsException if offset is negative or greater than the current length().

See Also

public StringBuilder insert(int offset, String str)

Inserts the String value passed into this object at the offset passed. If the String parameter is null, then the String "null" is inserted.

Parameters

offset The index of this object to insert the value.
str The String to insert into this object.

Returns

  • A reference to this object.

Throws

StringIndexOutOfBoundsException if offset is negative or greater than the current length().

public StringBuilder insert(int offset, char[] ch)

Inserts the String representation of the char[] value passed into this object at the offset passed. The char[] value is converted to a String according to the rule defined by valueOf(char[]).

Parameters

offset The index of this object to insert the value.
ch The char[] value to insert into this object.

Returns

  • A reference to this object.

Throws

StringIndexOutOfBoundsException if offset is negative or greater than the current length().

See Also

public StringBuilder insert(int offset, boolean b)

Inserts the String representation of the boolean value passed into this object at the offset passed. The boolean value is converted to a String according to the rule defined by valueOf(boolean).

Parameters

offset The index of this object to insert the value.
b The boolean value to insert into this object.

Returns

  • A reference to this object.

Throws

StringIndexOutOfBoundsException if offset is negative or greater than the current length().

See Also

public StringBuilder insert(int offset, double d)

Inserts the String representation of the double value passed into this object at the offset passed. The double value is converted to a String according to the rule defined by valueOf(double).

Parameters

offset The index of this object to insert the value.
d The double value to insert into this object.

Returns

  • A reference to this object.

Throws

StringIndexOutOfBoundsException if offset is negative or greater than the current length().

See Also

public StringBuilder insert(int offset, char c)

Inserts the String representation of the char value passed into this object at the offset passed. The char value is converted to a String according to the rule defined by valueOf(char).

Parameters

offset The index of this object to insert the value.
c The char value to insert into this object.

Returns

  • A reference to this object.

Throws

ArrayIndexOutOfBoundsException if offset is negative or greater than the current length().

See Also

public StringBuilder insert(int offset, float f)

Inserts the String representation of the float value passed into this object at the offset passed. The float value is converted to a String according to the rule defined by valueOf(float).

Parameters

offset The index of this object to insert the value.
f The float value to insert into this object.

Returns

  • A reference to this object.

Throws

StringIndexOutOfBoundsException if offset is negative or greater than the current length().

See Also

public StringBuilder insert(int offset, int i)

Inserts the String representation of the int value passed into this object at the offset passed. The int value is converted to a String according to the rule defined by valueOf(int).

Parameters

offset The index of this object to insert the value.
i The int value to insert into this object.

Returns

  • A reference to this object.

Throws

StringIndexOutOfBoundsException if offset is negative or greater than the current length().

See Also

public StringBuilder insert(int offset, CharSequence s)

Inserts the String representation of the CharSequence value passed into this object at the offset passed. The CharSequence value is converted to a String as defined by toString(). If the CharSequence is null, then the String "null" is inserted.

Parameters

offset The index of this object to insert the value.
s The CharSequence value to insert into this object.

Returns

  • A reference to this object.

Throws

IndexOutOfBoundsException if offset is negative or greater than the current length().

See Also

public StringBuilder insert(int offset, CharSequence s, int start, int end)

Inserts the String representation of the subsequence of the CharSequence value passed into this object at the offset passed. The CharSequence value is converted to a String as defined by subSequence(int, int). If the CharSequence is null, then the String "null" is used to determine the subsequence.

Parameters

offset The index of this object to insert the value.
s The CharSequence value to insert into this object.
start The start of the subsequence of the s parameter.
end The end of the subsequence of the s parameter.

Returns

  • A reference to this object.

Throws

IndexOutOfBoundsException if offset is negative or greater than the current length().

public StringBuilder insert(int offset, char[] str, int strOffset, int strLen)

Inserts the String representation of the subsequence of the char[] value passed into this object at the offset passed. The char[] value is converted to a String according to the rule defined by valueOf(char[], int, int).

Parameters

offset The index of this object to insert the value.
str The char[] value to insert into this object.
strOffset The inclusive index of the str parameter to start copying from.
strLen The number of characters to copy from the str parameter.

Returns

  • A reference to this object.

Throws

StringIndexOutOfBoundsException if offset is negative or greater than the current length().

public StringBuilder insert(int offset, long l)

Inserts the String representation of the long value passed into this object at the offset passed. The long value is converted to a String according to the rule defined by valueOf(long).

Parameters

offset The index of this object to insert the value.
l The long value to insert into this object.

Returns

  • A reference to this object.

Throws

StringIndexOutOfBoundsException if offset is negative or greater than the current length().

See Also

public int lastIndexOf(String string)

Searches in this StringBuffer for the last index of the specified character. The search for the character starts at the end and moves towards the beginning.

Parameters

string the string to find

Returns

  • the index in this StringBuffer of the specified character, -1 if the character isn't found

Throws

NullPointerException if the string parameter is null.

public int lastIndexOf(String subString, int start)

Searches in this StringBuffer for the index of the specified character. The search for the character starts at the specified offset and moves towards the beginning.

Parameters

subString the string to find
start the starting offset

Returns

  • the index in this StringBuffer of the specified character, -1 if the character isn't found

Throws

NullPointerException if the subString parameter is null.

public int length()

The current length of this object.

Returns

  • the number of characters in this StringBuffer

public int offsetByCodePoints(int index, int codePointOffset)

Returns the index within this object that is offset from index by codePointOffset code points.

Parameters

index The index within this object to calculate the offset from.
codePointOffset The number of code points to count.

Returns

  • The index within this object that is the offset.

Throws

IndexOutOfBoundsException if index is negative or greater than length() or if there aren't enough code points before or after index to match codePointOffset.

public StringBuilder replace(int start, int end, String str)

Replaces the indicated subsequence of this object with the String passed. If the String passed is longer or shorter than the subsequence, then this object will be adjusted appropriately.

Parameters

start The inclusive start index of the sequence to replace in this object.
end The exclusive end index of the sequence to replace in this object.
str The String to replace the subsequence.

Returns

  • A reference to this object.

Throws

StringIndexOutOfBoundsException if start is negative, greater than the current length() or greater than end.
NullPointerException if the str parameter is null.

public StringBuilder reverse()

Reverses the contents of this object.

Returns

  • A reference to this object.

public void setCharAt(int index, char ch)

Sets the character at the index in this object.

Parameters

index the zero-based index of the character to replace.
ch the character to set.

Throws

IndexOutOfBoundsException if index is negative or greater than or equal to the current length().

public void setLength(int length)

Sets the current length to a new value. If the new length is larger than the current length, then the new characters at the end of this object will contain the char value of