Class AppendingStringBuffer

java.lang.Object
org.apache.wicket.util.string.AppendingStringBuffer
All Implemented Interfaces:
Serializable, CharSequence

public final class AppendingStringBuffer extends Object implements Serializable, CharSequence
This is a copy or combination of java.lang.StringBuffer and java.lang.String It has a special method getValue() which returns the internal char array. Hashcode and equals methods are also implemented. This AppendingStringBuffer is not synchronized.
Author:
Johan Compagner
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a string buffer with no characters in it and an initial capacity of 16 characters.
    Constructs a string buffer with no characters in it and an initial capacity specified by the length argument.
    Constructs a string buffer so that it represents the same sequence of characters as the string argument; in other words, the initial contents of the string buffer is a copy of the argument string.
  • Method Summary

    Modifier and Type
    Method
    Description
    append(boolean b)
    Appends the string representation of the boolean argument to the string buffer.
    append(char c)
    Appends the string representation of the char argument to this string buffer.
    append(char[] str)
    Appends the string representation of the char array argument to this string buffer.
    append(char[] str, int offset, int len)
    Appends the string representation of a subarray of the char array argument to this string buffer.
    append(double d)
    Appends the string representation of the double argument to this string buffer.
    append(float f)
    Appends the string representation of the float argument to this string buffer.
    append(int i)
    Appends the string representation of the int argument to this string buffer.
    append(long l)
    Appends the string representation of the long argument to this string buffer.
    Appends the string representation of the Object argument to this string buffer.
    Appends the string to this string buffer.
    Appends the specified AppendingStringBuffer to this AppendingStringBuffer.
    Appends the specified AppendingStringBuffer to this AppendingStringBuffer.
    int
    Returns the current capacity of the String buffer.
    char
    charAt(int index)
    The specified character of the sequence currently represented by the string buffer, as indicated by the index argument, is returned.
    void
    Clears the buffer contents, but leaves the allocated size intact
    delete(int start, int end)
    Removes the characters in a substring of this AppendingStringBuffer.
    deleteCharAt(int index)
    Removes the character at the specified position in this AppendingStringBuffer (shortening the AppendingStringBuffer by one character).
    boolean
    Tests if this AppendingStringBuffer ends with the specified suffix.
    void
    ensureCapacity(int minimumCapacity)
    Ensures that the capacity of the buffer is at least equal to the specified minimum.
    boolean
    equals(Object anObject)
    Compares this AppendingStringBuffer to the specified object.
    void
    getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
    Characters are copied from this string buffer into the destination character array dst.
    final char[]
    This method returns the internal char array.
    int
    Returns a hash code for this AppendingStringBuffer.
    int
    Returns the index within this string of the first occurrence of the specified substring.
    int
    indexOf(String str, int fromIndex)
    Returns the index within this string of the first occurrence of the specified substring, starting at the specified index.
    insert(int offset, boolean b)
    Inserts the string representation of the boolean argument into this string buffer.
    insert(int offset, char c)
    Inserts the string representation of the char argument into this string buffer.
    insert(int offset, char[] str)
    Inserts the string representation of the char array argument into this string buffer.
    insert(int index, char[] str, int offset, int len)
    Inserts the string representation of a subarray of the str array argument into this string buffer.
    insert(int offset, double d)
    Inserts the string representation of the double argument into this string buffer.
    insert(int offset, float f)
    Inserts the string representation of the float argument into this string buffer.
    insert(int offset, int i)
    Inserts the string representation of the second int argument into this string buffer.
    insert(int offset, long l)
    Inserts the string representation of the long argument into this string buffer.
    insert(int offset, Object obj)
    Inserts the string representation of the Object argument into this string buffer.
    insert(int offset, String str)
    Inserts the string into this string buffer.
    insert(int offset, StringBuffer str)
    Inserts the string into this string buffer.
    insert(int offset, StringBuilder str)
    Inserts the string into this string buffer.
    int
    Returns the index within this string of the rightmost occurrence of the specified substring.
    int
    lastIndexOf(String str, int fromIndex)
    Returns the index within this string of the last occurrence of the specified substring.
    int
    Returns the length (character count) of this string buffer.
    replace(int start, int end, String str)
    Replaces the characters in a substring of this AppendingStringBuffer with characters in the specified String.
    void
    setCharAt(int index, char ch)
    The character at the specified index of this string buffer is set to ch.
    void
    setLength(int newLength)
    Sets the length of this String buffer.
    boolean
    Tests if this AppendingStringBuffer starts with the specified prefix.
    boolean
    startsWith(CharSequence prefix, int toffset)
    Tests if this AppendingStringBuffer starts with the specified prefix beginning a specified index.
    subSequence(int start, int end)
    Returns a new character sequence that is a subsequence of this sequence.
    substring(int start)
    Returns a new String that contains a subsequence of characters currently contained in this AppendingStringBuffer.The substring begins at the specified index and extends to the end of the AppendingStringBuffer.
    substring(int start, int end)
    Returns a new String that contains a subsequence of characters currently contained in this AppendingStringBuffer.
    Converts to a string representing the data in this AppendingStringBuffer.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface java.lang.CharSequence

    chars, codePoints, isEmpty
  • Constructor Details

    • AppendingStringBuffer

      Constructs a string buffer with no characters in it and an initial capacity of 16 characters.
    • AppendingStringBuffer

      public AppendingStringBuffer(int length)
      Constructs a string buffer with no characters in it and an initial capacity specified by the length argument.
      Parameters:
      length - the initial capacity.
      Throws:
      NegativeArraySizeException - if the length argument is less than 0.
    • AppendingStringBuffer

      Constructs a string buffer so that it represents the same sequence of characters as the string argument; in other words, the initial contents of the string buffer is a copy of the argument string. The initial capacity of the string buffer is 16 plus the length of the string argument.
      Parameters:
      str - the initial contents of the buffer.
      Throws:
      NullPointerException - if str is null
  • Method Details

    • length

      public int length()
      Returns the length (character count) of this string buffer.
      Specified by:
      length in interface CharSequence
      Returns:
      the length of the sequence of characters currently represented by this string buffer.
    • capacity

      public int capacity()
      Returns the current capacity of the String buffer. The capacity is the amount of storage available for newly inserted characters; beyond which an allocation will occur.
      Returns:
      the current capacity of this string buffer.
    • ensureCapacity

      public void ensureCapacity(int minimumCapacity)
      Ensures that the capacity of the buffer is at least equal to the specified minimum. If the current capacity of this string buffer is less than the argument, then a new internal buffer is allocated with greater capacity. The new capacity is the larger of:
      • The minimumCapacity argument.
      • Twice the old capacity, plus 2.
      If the minimumCapacity argument is nonpositive, this method takes no action and simply returns.
      Parameters:
      minimumCapacity - the minimum desired capacity.
    • setLength

      public void setLength(int newLength)
      Sets the length of this String buffer. This string buffer is altered to represent a new character sequence whose length is specified by the argument. For every nonnegative index k less than newLength, the character at index k in the new character sequence is the same as the character at index k in the old sequence if k is less than the length of the old character sequence; otherwise, it is the null character '\u0000'. In other words, if the newLength argument is less than the current length of the string buffer, the string buffer is truncated to contain exactly the number of characters given by the newLength argument.

      If the newLength argument is greater than or equal to the current length, sufficient null characters ('\u0000') are appended to the string buffer so that length becomes the newLength argument.

      The newLength argument must be greater than or equal to 0.

      Parameters:
      newLength - the new length of the buffer.
      Throws:
      IndexOutOfBoundsException - if the newLength argument is negative.
      See Also:
    • charAt

      public char charAt(int index)
      The specified character of the sequence currently represented by the string buffer, as indicated by the index argument, is returned. The first character of a string buffer is at index 0, the next at index 1, and so on, for array indexing.

      The index argument must be greater than or equal to 0, and less than the length of this string buffer.

      Specified by:
      charAt in interface CharSequence
      Parameters:
      index - the index of the desired character.
      Returns:
      the character at the specified index of this string buffer.
      Throws:
      IndexOutOfBoundsException - if index is negative or greater than or equal to length().
      See Also:
    • getChars

      public void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
      Characters are copied from this string buffer into the destination character array dst. The first character to be copied is at index srcBegin; the last character to be copied is at index srcEnd-1. The total number of characters to be copied is srcEnd-srcBegin. The characters are copied into the subarray of dst starting at index dstBegin and ending at index:

       dstbegin + (srcEnd - srcBegin) - 1
       
      Parameters:
      srcBegin - start copying at this offset in the string buffer.
      srcEnd - stop copying at this offset in the string buffer.
      dst - the array to copy the data into.
      dstBegin - offset into dst.
      Throws:
      NullPointerException - if dst is null.
      IndexOutOfBoundsException - if any of the following is true:
      • srcBegin is negative
      • dstBegin is negative
      • the srcBegin argument is greater than the srcEnd argument.
      • srcEnd is greater than this.length(), the current length of this string buffer.
      • dstBegin+srcEnd-srcBegin is greater than dst.length
    • setCharAt

      public void setCharAt(int index, char ch)
      The character at the specified index of this string buffer is set to ch. The string buffer is altered to represent a new character sequence that is identical to the old character sequence, except that it contains the character ch at position index.

      The index argument must be greater than or equal to 0, and less than the length of this string buffer.

      Parameters:
      index - the index of the character to modify.
      ch - the new character.
      Throws:
      IndexOutOfBoundsException - if index is negative or greater than or equal to length().
      See Also:
    • append

      Appends the string representation of the Object argument to this string buffer.

      The argument is converted to a string as if by the method String.valueOf, and the characters of that string are then appended to this string buffer.

      Parameters:
      obj - an Object.
      Returns:
      a reference to this AppendingStringBuffer object.
      See Also:
    • append

      Appends the string to this string buffer.

      The characters of the String argument are appended, in order, to the contents of this string buffer, increasing the length of this string buffer by the length of the argument. If str is null, then the four characters "null" are appended to this string buffer.

      Let n be the length of the old character sequence, the one contained in the string buffer just prior to execution of the append method. Then the character at index k in the new character sequence is equal to the character at index k in the old character sequence, if k is less than n; otherwise, it is equal to the character at index k-n in the argument str.

      Parameters:
      str - a string.
      Returns:
      a reference to this AppendingStringBuffer.
    • append

      Appends the specified AppendingStringBuffer to this AppendingStringBuffer.

      The characters of the AppendingStringBuffer argument are appended, in order, to the contents of this AppendingStringBuffer, increasing the length of this AppendingStringBuffer by the length of the argument. If sb is null , then the four characters "null" are appended to this AppendingStringBuffer.

      Let n be the length of the old character sequence, the one contained in the AppendingStringBuffer just prior to execution of the append method. Then the character at index k in the new character sequence is equal to the character at index k in the old character sequence, if k is less than n; otherwise, it is equal to the character at index k-n in the argument sb.

      The method ensureCapacity is first called on this AppendingStringBuffer with the new buffer length as its argument. (This ensures that the storage of this AppendingStringBuffer is adequate to contain the additional characters being appended.)

      Parameters:
      sb - the AppendingStringBuffer to append.
      Returns:
      a reference to this AppendingStringBuffer.
      Since:
      1.4
    • append

      Appends the specified AppendingStringBuffer to this AppendingStringBuffer.

      The characters of the AppendingStringBuffer argument are appended, in order, to the contents of this AppendingStringBuffer, increasing the length of this AppendingStringBuffer by the length of the argument. If sb is null , then the four characters "null" are appended to this AppendingStringBuffer.

      Let n be the length of the old character sequence, the one contained in the AppendingStringBuffer just prior to execution of the append method. Then the character at index k in the new character sequence is equal to the character at index k in the old character sequence, if k is less than n; otherwise, it is equal to the character at index k-n in the argument sb.

      The method ensureCapacity is first called on this AppendingStringBuffer with the new buffer length as its argument. (This ensures that the storage of this AppendingStringBuffer is adequate to contain the additional characters being appended.)

      Parameters:
      sb - the AppendingStringBuffer to append.
      Returns:
      a reference to this AppendingStringBuffer.
      Since:
      1.4
    • append

      public AppendingStringBuffer append(char[] str)
      Appends the string representation of the char array argument to this string buffer.

      The characters of the array argument are appended, in order, to the contents of this string buffer. The length of this string buffer increases by the length of the argument.

      The overall effect is exactly as if the argument were converted to a string by the method String.valueOf(char[]) and the characters of that string were then appended to this AppendingStringBuffer object.

      Parameters:
      str - the characters to be appended.
      Returns:
      a reference to this AppendingStringBuffer object.
    • append

      public AppendingStringBuffer append(char[] str, int offset, int len)
      Appends the string representation of a subarray of the char array argument to this string buffer.

      Characters of the character array str, starting at index offset, are appended, in order, to the contents of this string buffer. The length of this string buffer increases by the value of len.

      The overall effect is exactly as if the arguments were converted to a string by the method String.valueOf(char[],int,int) and the characters of that string were then appended to this AppendingStringBuffer object.

      Parameters:
      str - the characters to be appended.
      offset - the index of the first character to append.
      len - the number of characters to append.
      Returns:
      a reference to this AppendingStringBuffer object.
    • append

      public AppendingStringBuffer append(boolean b)
      Appends the string representation of the boolean argument to the string buffer.

      The argument is converted to a string as if by the method String.valueOf, and the characters of that string are then appended to this string buffer.

      Parameters:
      b - a boolean.
      Returns:
      a reference to this AppendingStringBuffer.
      See Also:
    • append

      public AppendingStringBuffer append(char c)
      Appends the string representation of the char argument to this string buffer.

      The argument is appended to the contents of this string buffer. The length of this string buffer increases by 1.

      The overall effect is exactly as if the argument were converted to a string by the method String.valueOf(char) and the character in that string were then appended to this AppendingStringBuffer object.

      Parameters:
      c - a char.
      Returns:
      a reference to this AppendingStringBuffer object.
    • append

      public AppendingStringBuffer append(int i)
      Appends the string representation of the int argument to this string buffer.

      The argument is converted to a string as if by the method String.valueOf, and the characters of that string are then appended to this string buffer.

      Parameters:
      i - an int.
      Returns:
      a reference to this AppendingStringBuffer object.
      See Also:
    • append

      public AppendingStringBuffer append(long l)
      Appends the string representation of the long argument to this string buffer.

      The argument is converted to a string as if by the method String.valueOf, and the characters of that string are then appended to this string buffer.

      Parameters:
      l - a long.
      Returns:
      a reference to this AppendingStringBuffer object.
      See Also:
    • append

      public AppendingStringBuffer append(float f)
      Appends the string representation of the float argument to this string buffer.

      The argument is converted to a string as if by the method String.valueOf, and the characters of that string are then appended to this string buffer.

      Parameters:
      f - a float.
      Returns:
      a reference to this AppendingStringBuffer object.
      See Also:
    • append

      public AppendingStringBuffer append(double d)
      Appends the string representation of the double argument to this string buffer.

      The argument is converted to a string as if by the method String.valueOf, and the characters of that string are then appended to this string buffer.

      Parameters:
      d - a double.
      Returns:
      a reference to this AppendingStringBuffer object.
      See Also:
    • delete

      public AppendingStringBuffer delete(int start, int end)
      Removes the characters in a substring of this AppendingStringBuffer. The substring begins at the specified start and extends to the character at index end - 1 or to the end of the AppendingStringBuffer if no such character exists. If start is equal to end, no changes are made.
      Parameters:
      start - The beginning index, inclusive.
      end - The ending index, exclusive.
      Returns:
      This string buffer.
      Throws:
      StringIndexOutOfBoundsException - if start is negative, greater than length(), or greater than end.
      Since:
      1.2
    • deleteCharAt

      public AppendingStringBuffer deleteCharAt(int index)
      Removes the character at the specified position in this AppendingStringBuffer (shortening the AppendingStringBuffer by one character).
      Parameters:
      index - Index of character to remove
      Returns:
      This string buffer.
      Throws:
      StringIndexOutOfBoundsException - if the index is negative or greater than or equal to length().
      Since:
      1.2
    • replace

      public AppendingStringBuffer replace(int start, int end, String str)
      Replaces the characters in a substring of this AppendingStringBuffer with characters in the specified String. The substring begins at the specified start and extends to the character at index end - 1 or to the end of the AppendingStringBuffer if no such character exists. First the characters in the substring are removed and then the specified String is inserted at start. (The AppendingStringBuffer will be lengthened to accommodate the specified String if necessary.)
      Parameters:
      start - The beginning index, inclusive.
      end - The ending index, exclusive.
      str - String that will replace previous contents.
      Returns:
      This string buffer.
      Throws:
      StringIndexOutOfBoundsException - if start is negative, greater than length(), or greater than end.
      Since:
      1.2
    • substring

      public String substring(int start)
      Returns a new String that contains a subsequence of characters currently contained in this AppendingStringBuffer.The substring begins at the specified index and extends to the end of the AppendingStringBuffer.
      Parameters:
      start - The beginning index, inclusive.
      Returns:
      The new string.
      Throws:
      StringIndexOutOfBoundsException - if start is less than zero, or greater than the length of this AppendingStringBuffer.
      Since:
      1.2
    • subSequence

      public CharSequence subSequence(int start, int end)
      Returns a new character sequence that is a subsequence of this sequence.

      An invocation of this method of the form

       sb.subSequence(begin, end)
       
      behaves in exactly the same way as the invocation
       sb.substring(begin, end)
       
      This method is provided so that the AppendingStringBuffer class can implement the CharSequence interface.

      Specified by:
      subSequence in interface CharSequence
      Parameters:
      start - the start index, inclusive.
      end - the end index, exclusive.
      Returns:
      the specified subsequence.
      Throws:
      IndexOutOfBoundsException - if start or end are negative, if end is greater than length(), or if start is greater than end
      Since:
      1.4 Specification: JSR-51
    • substring

      public String substring(int start, int end)
      Returns a new String that contains a subsequence of characters currently contained in this AppendingStringBuffer. The substring begins at the specified start and extends to the character at index end - 1. An exception is thrown if
      Parameters:
      start - The beginning index, inclusive.
      end - The ending index, exclusive.
      Returns:
      The new string.
      Throws:
      StringIndexOutOfBoundsException - if start or end are negative or greater than length(), or start is greater than end.
      Since:
      1.2
    • insert

      public AppendingStringBuffer insert(int index, char[] str, int offset, int len)
      Inserts the string representation of a subarray of the str array argument into this string buffer. The subarray begins at the specified offset and extends len characters. The characters of the subarray are inserted into this string buffer at the position indicated by index. The length of this AppendingStringBuffer increases by len characters.
      Parameters:
      index - position at which to insert subarray.
      str - A character array.
      offset - the index of the first character in subarray to to be inserted.
      len - the number of characters in the subarray to to be inserted.
      Returns:
      This string buffer.
      Throws:
      StringIndexOutOfBoundsException - if index is negative or greater than length(), or offset or len are negative, or (offset+len) is greater than str.length.
      Since:
      1.2
    • insert

      public AppendingStringBuffer insert(int offset, Object obj)
      Inserts the string representation of the Object argument into this string buffer.

      The second argument is converted to a string as if by the method String.valueOf, and the characters of that string are then inserted into this string buffer at the indicated offset.

      The offset argument must be greater than or equal to 0, and less than or equal to the length of this string buffer.

      Parameters:
      offset - the offset.
      obj - an Object.
      Returns:
      a reference to this AppendingStringBuffer object.
      Throws:
      StringIndexOutOfBoundsException - if the offset is invalid.
      See Also:
    • insert

      public AppendingStringBuffer insert(int offset, String str)
      Inserts the string into this string buffer.

      The characters of the String argument are inserted, in order, into this string buffer at the indicated offset, moving up any characters originally above that position and increasing the length of this string buffer by the length of the argument. If str is null, then the four characters "null" are inserted into this string buffer.

      The character at index k in the new character sequence is equal to:

      • the character at index k in the old character sequence, if k is less than offset
      • the character at index k-offset in the argument str, if k is not less than offset but is less than offset+str.length()
      • the character at index k-str.length() in the old character sequence, if k is not less than offset+str.length()

      The offset argument must be greater than or equal to 0, and less than or equal to the length of this string buffer.

      Parameters:
      offset - the offset.
      str - a string.
      Returns:
      a reference to this AppendingStringBuffer object.
      Throws:
      StringIndexOutOfBoundsException - if the offset is invalid.
      See Also:
    • insert

      public AppendingStringBuffer insert(int offset, StringBuilder str)
      Inserts the string into this string buffer.

      The characters of the StringBuilder argument are inserted, in order, into this string buffer at the indicated offset, moving up any characters originally above that position and increasing the length of this string buffer by the length of the argument. If str is null, then the four characters "null" are inserted into this string buffer.

      The character at index k in the new character sequence is equal to:

      • the character at index k in the old character sequence, if k is less than offset
      • the character at index k-offset in the argument str, if k is not less than offset but is less than offset+str.length()
      • the character at index k-str.length() in the old character sequence, if k is not less than offset+str.length()

      The offset argument must be greater than or equal to 0, and less than or equal to the length of this string buffer.

      Parameters:
      offset - the offset.
      str - a string.
      Returns:
      a reference to this AppendingStringBuffer object.
      Throws:
      StringIndexOutOfBoundsException - if the offset is invalid.
      See Also:
    • insert

      public AppendingStringBuffer insert(int offset, StringBuffer str)
      Inserts the string into this string buffer.

      The characters of the StringBuffer argument are inserted, in order, into this string buffer at the indicated offset, moving up any characters originally above that position and increasing the length of this string buffer by the length of the argument. If str is null, then the four characters "null" are inserted into this string buffer.

      The character at index k in the new character sequence is equal to:

      • the character at index k in the old character sequence, if k is less than offset
      • the character at index k-offset in the argument str, if k is not less than offset but is less than offset+str.length()
      • the character at index k-str.length() in the old character sequence, if k is not less than offset+str.length()

      The offset argument must be greater than or equal to 0, and less than or equal to the length of this string buffer.

      Parameters:
      offset - the offset.
      str - a string.
      Returns:
      a reference to this AppendingStringBuffer object.
      Throws:
      StringIndexOutOfBoundsException - if the offset is invalid.
      See Also:
    • insert

      public AppendingStringBuffer insert(int offset, char[] str)
      Inserts the string representation of the char array argument into this string buffer.

      The characters of the array argument are inserted into the contents of this string buffer at the position indicated by offset. The length of this string buffer increases by the length of the argument.

      The overall effect is exactly as if the argument were converted to a string by the method String.valueOf(char[]) and the characters of that string were then inserted into this AppendingStringBuffer object at the position indicated by offset.

      Parameters:
      offset - the offset.
      str - a character array.
      Returns:
      a reference to this AppendingStringBuffer object.
      Throws:
      StringIndexOutOfBoundsException - if the offset is invalid.
    • insert

      public AppendingStringBuffer insert(int offset, boolean b)
      Inserts the string representation of the boolean argument into this string buffer.

      The second argument is converted to a string as if by the method String.valueOf, and the characters of that string are then inserted into this string buffer at the indicated offset.

      The offset argument must be greater than or equal to 0, and less than or equal to the length of this string buffer.

      Parameters:
      offset - the offset.
      b - a boolean.
      Returns:
      a reference to this AppendingStringBuffer object.
      Throws:
      StringIndexOutOfBoundsException - if the offset is invalid.
      See Also:
    • insert

      public AppendingStringBuffer insert(int offset, char c)
      Inserts the string representation of the char argument into this string buffer.

      The second argument is inserted into the contents of this string buffer at the position indicated by offset. The length of this string buffer increases by one.

      The overall effect is exactly as if the argument were converted to a string by the method String.valueOf(char) and the character in that string were then inserted into this AppendingStringBuffer object at the position indicated by offset.

      The offset argument must be greater than or equal to 0, and less than or equal to the length of this string buffer.

      Parameters:
      offset - the offset.
      c - a char.
      Returns:
      a reference to this AppendingStringBuffer object.
      Throws:
      IndexOutOfBoundsException - if the offset is invalid.
      See Also:
    • insert

      public AppendingStringBuffer insert(int offset, int i)
      Inserts the string representation of the second int argument into this string buffer.

      The second argument is converted to a string as if by the method String.valueOf, and the characters of that string are then inserted into this string buffer at the indicated offset.

      The offset argument must be greater than or equal to 0, and less than or equal to the length of this string buffer.

      Parameters:
      offset - the offset.
      i - an int.
      Returns:
      a reference to this AppendingStringBuffer object.
      Throws:
      StringIndexOutOfBoundsException - if the offset is invalid.
      See Also:
    • insert

      public AppendingStringBuffer insert(int offset, long l)
      Inserts the string representation of the long argument into this string buffer.

      The second argument is converted to a string as if by the method String.valueOf, and the characters of that string are then inserted into this string buffer at the position indicated by offset.

      The offset argument must be greater than or equal to 0, and less than or equal to the length of this string buffer.

      Parameters:
      offset - the offset.
      l - a long.
      Returns:
      a reference to this AppendingStringBuffer object.
      Throws:
      StringIndexOutOfBoundsException - if the offset is invalid.
      See Also:
    • insert

      public AppendingStringBuffer insert(int offset, float f)
      Inserts the string representation of the float argument into this string buffer.

      The second argument is converted to a string as if by the method String.valueOf, and the characters of that string are then inserted into this string buffer at the indicated offset.

      The offset argument must be greater than or equal to 0, and less than or equal to the length of this string buffer.

      Parameters:
      offset - the offset.
      f - a float.
      Returns:
      a reference to this AppendingStringBuffer object.
      Throws:
      StringIndexOutOfBoundsException - if the offset is invalid.
      See Also:
    • insert

      public AppendingStringBuffer insert(int offset, double d)
      Inserts the string representation of the double argument into this string buffer.

      The second argument is converted to a string as if by the method String.valueOf, and the characters of that string are then inserted into this string buffer at the indicated offset.

      The offset argument must be greater than or equal to 0, and less than or equal to the length of this string buffer.

      Parameters:
      offset - the offset.
      d - a double.
      Returns:
      a reference to this AppendingStringBuffer object.
      Throws:
      StringIndexOutOfBoundsException - if the offset is invalid.
      See Also:
    • indexOf

      public int indexOf(String str)
      Returns the index within this string of the first occurrence of the specified substring. The integer returned is the smallest value k such that:
             this.toString().startsWith(str, <i>k</i>)
       
      is true.
      Parameters:
      str - any string.
      Returns:
      if the string argument occurs as a substring within this object, then the index of the first character of the first such substring is returned; if it does not occur as a substring, -1 is returned.
      Throws:
      NullPointerException - if str is null.
      Since:
      1.4
    • indexOf

      public int indexOf(String str, int fromIndex)
      Returns the index within this string of the first occurrence of the specified substring, starting at the specified index. The integer returned is the smallest value k for which:
       k >= Math.min(fromIndex, str.length()) && this.toString().startsWith(str, k)
       
      If no such value of k exists, then -1 is returned.
      Parameters:
      str - the substring for which to search.
      fromIndex - the index from which to start the search.
      Returns:
      the index within this string of the first occurrence of the specified substring, starting at the specified index.
      Throws:
      NullPointerException - if str is null.
      Since:
      1.4
    • lastIndexOf

      public int lastIndexOf(String str)
      Returns the index within this string of the rightmost occurrence of the specified substring. The rightmost empty string "" is considered to occur at the index value this.length(). The returned index is the largest value k such that
       this.toString().startsWith(str, k)
       
      is true.
      Parameters:
      str - the substring to search for.
      Returns:
      if the string argument occurs one or more times as a substring within this object, then the index of the first character of the last such substring is returned. If it does not occur as a substring, -1 is returned.
      Throws:
      NullPointerException - if str is null.
      Since:
      1.4
    • lastIndexOf

      public int lastIndexOf(String str, int fromIndex)
      Returns the index within this string of the last occurrence of the specified substring. The integer returned is the largest value k such that:
       k <= Math.min(fromIndex, str.length()) && this.toString().startsWith(str, k)
       
      If no such value of k exists, then -1 is returned.
      Parameters:
      str - the substring to search for.
      fromIndex - the index to start the search from.
      Returns:
      the index within this string of the last occurrence of the specified substring.
      Throws:
      NullPointerException - if str is null.
      Since:
      1.4
    • startsWith

      public boolean startsWith(CharSequence prefix, int toffset)
      Tests if this AppendingStringBuffer starts with the specified prefix beginning a specified index.
      Parameters:
      prefix - the prefix.
      toffset - where to begin looking in the string.
      Returns:
      true if the character sequence represented by the argument is a prefix of the substring of this object starting at index toffset; false otherwise. The result is false if toffset is negative or greater than the length of this String object; otherwise the result is the same as the result of the expression
       this.subString(toffset).startsWith(prefix)
       
    • startsWith

      public boolean startsWith(CharSequence prefix)
      Tests if this AppendingStringBuffer starts with the specified prefix.
      Parameters:
      prefix - the prefix.
      Returns:
      true if the character sequence represented by the argument is a prefix of the character sequence represented by this AppendingStringBuffer; false otherwise. Note also that true will be returned if the argument is an empty string or is equal to this AppendingStringBuffer object as determined by the equals(Object) method.
      Since:
      1. 0
    • endsWith

      public boolean endsWith(CharSequence suffix)
      Tests if this AppendingStringBuffer ends with the specified suffix.
      Parameters:
      suffix - the suffix.
      Returns:
      true if the character sequence represented by the argument is a suffix of the character sequence represented by this AppendingStringBuffer; false otherwise. Note that the result will be true if the argument is the empty string or is equal to this AppendingStringBuffer object as determined by the equals(Object) method.
    • toString

      public String toString()
      Converts to a string representing the data in this AppendingStringBuffer. A new String object is allocated and initialized to contain the character sequence currently represented by this string buffer. This String is then returned. Subsequent changes to the string buffer do not affect the contents of the String .

      Implementation advice: This method can be coded so as to create a new String object without allocating new memory to hold a copy of the character sequence. Instead, the string can share the memory used by the string buffer. Any subsequent operation that alters the content or capacity of the string buffer must then make a copy of the internal buffer at that time. This strategy is effective for reducing the amount of memory allocated by a string concatenation operation when it is implemented using a string buffer.

      Specified by:
      toString in interface CharSequence
      Overrides:
      toString in class Object
      Returns:
      a string representation of the string buffer.
    • getValue

      public final char[] getValue()
      This method returns the internal char array. So it is not
      Returns:
      The internal char array
    • equals

      public boolean equals(Object anObject)
      Compares this AppendingStringBuffer to the specified object. The result is true if and only if the argument is not null and is a AppendingStringBuffer object or another charsequence object! that represents the same sequence of characters as this object.
      Overrides:
      equals in class Object
      Parameters:
      anObject - the object to compare this AppendingStringBuffer against.
      Returns:
      true if the AppendingStringBufferare equal; false otherwise.
    • hashCode

      public int hashCode()
      Returns a hash code for this AppendingStringBuffer. The hash code for a AppendingStringBuffer object is computed as
          s[0]*31ˆ(n-1) + s[1]*31ˆ(n-2) + ... + s[n-1]
       
      using int arithmetic, where s[i] is the ith character of the AppendingStringBuffer, n is the length of the AppendingStringBuffer, and ^ indicates exponentiation. (The hash value of the empty AppendingStringBuffer is zero.)
      Overrides:
      hashCode in class Object
      Returns:
      a hash code value for this object.
    • clear

      public void clear()
      Clears the buffer contents, but leaves the allocated size intact