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 ofjava.lang.StringBufferandjava.lang.StringIt 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:
StringBuffer, Serialized Form
-
-
Constructor Summary
Constructors Constructor Description AppendingStringBuffer()Constructs a string buffer with no characters in it and an initial capacity of 16 characters.AppendingStringBuffer(int length)Constructs a string buffer with no characters in it and an initial capacity specified by thelengthargument.AppendingStringBuffer(CharSequence str)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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AppendingStringBufferappend(boolean b)Appends the string representation of thebooleanargument to the string buffer.AppendingStringBufferappend(char c)Appends the string representation of thecharargument to this string buffer.AppendingStringBufferappend(char[] str)Appends the string representation of thechararray argument to this string buffer.AppendingStringBufferappend(char[] str, int offset, int len)Appends the string representation of a subarray of thechararray argument to this string buffer.AppendingStringBufferappend(double d)Appends the string representation of thedoubleargument to this string buffer.AppendingStringBufferappend(float f)Appends the string representation of thefloatargument to this string buffer.AppendingStringBufferappend(int i)Appends the string representation of theintargument to this string buffer.AppendingStringBufferappend(long l)Appends the string representation of thelongargument to this string buffer.AppendingStringBufferappend(Object obj)Appends the string representation of theObjectargument to this string buffer.AppendingStringBufferappend(String str)Appends the string to this string buffer.AppendingStringBufferappend(StringBuilder sb)Appends the specified AppendingStringBuffer to this AppendingStringBuffer.AppendingStringBufferappend(AppendingStringBuffer sb)Appends the specified AppendingStringBuffer to this AppendingStringBuffer.intcapacity()Returns the current capacity of the String buffer.charcharAt(int index)The specified character of the sequence currently represented by the string buffer, as indicated by theindexargument, is returned.voidclear()Clears the buffer contents, but leaves the allocated size intactAppendingStringBufferdelete(int start, int end)Removes the characters in a substring of thisAppendingStringBuffer.AppendingStringBufferdeleteCharAt(int index)Removes the character at the specified position in thisAppendingStringBuffer(shortening theAppendingStringBufferby one character).booleanendsWith(CharSequence suffix)Tests if this AppendingStringBuffer ends with the specified suffix.voidensureCapacity(int minimumCapacity)Ensures that the capacity of the buffer is at least equal to the specified minimum.booleanequals(Object anObject)Compares this AppendingStringBuffer to the specified object.voidgetChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)Characters are copied from this string buffer into the destination character arraydst.char[]getValue()This method returns the internal char array.inthashCode()Returns a hash code for this AppendingStringBuffer.intindexOf(String str)Returns the index within this string of the first occurrence of the specified substring.intindexOf(String str, int fromIndex)Returns the index within this string of the first occurrence of the specified substring, starting at the specified index.AppendingStringBufferinsert(int offset, boolean b)Inserts the string representation of thebooleanargument into this string buffer.AppendingStringBufferinsert(int offset, char c)Inserts the string representation of thecharargument into this string buffer.AppendingStringBufferinsert(int offset, char[] str)Inserts the string representation of thechararray argument into this string buffer.AppendingStringBufferinsert(int index, char[] str, int offset, int len)Inserts the string representation of a subarray of thestrarray argument into this string buffer.AppendingStringBufferinsert(int offset, double d)Inserts the string representation of thedoubleargument into this string buffer.AppendingStringBufferinsert(int offset, float f)Inserts the string representation of thefloatargument into this string buffer.AppendingStringBufferinsert(int offset, int i)Inserts the string representation of the secondintargument into this string buffer.AppendingStringBufferinsert(int offset, long l)Inserts the string representation of thelongargument into this string buffer.AppendingStringBufferinsert(int offset, Object obj)Inserts the string representation of theObjectargument into this string buffer.AppendingStringBufferinsert(int offset, String str)Inserts the string into this string buffer.AppendingStringBufferinsert(int offset, StringBuffer str)Inserts the string into this string buffer.AppendingStringBufferinsert(int offset, StringBuilder str)Inserts the string into this string buffer.intlastIndexOf(String str)Returns the index within this string of the rightmost occurrence of the specified substring.intlastIndexOf(String str, int fromIndex)Returns the index within this string of the last occurrence of the specified substring.intlength()Returns the length (character count) of this string buffer.AppendingStringBufferreplace(int start, int end, String str)Replaces the characters in a substring of thisAppendingStringBufferwith characters in the specifiedString.voidsetCharAt(int index, char ch)The character at the specified index of this string buffer is set toch.voidsetLength(int newLength)Sets the length of this String buffer.booleanstartsWith(CharSequence prefix)Tests if this AppendingStringBuffer starts with the specified prefix.booleanstartsWith(CharSequence prefix, int toffset)Tests if this AppendingStringBuffer starts with the specified prefix beginning a specified index.CharSequencesubSequence(int start, int end)Returns a new character sequence that is a subsequence of this sequence.Stringsubstring(int start)Returns a newStringthat contains a subsequence of characters currently contained in thisAppendingStringBuffer.The substring begins at the specified index and extends to the end of theAppendingStringBuffer.Stringsubstring(int start, int end)Returns a newStringthat contains a subsequence of characters currently contained in thisAppendingStringBuffer.StringtoString()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
-
-
-
-
Constructor Detail
-
AppendingStringBuffer
public 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 thelengthargument.- Parameters:
length- the initial capacity.- Throws:
NegativeArraySizeException- if thelengthargument is less than0.
-
AppendingStringBuffer
public AppendingStringBuffer(CharSequence str)
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 is16plus the length of the string argument.- Parameters:
str- the initial contents of the buffer.- Throws:
NullPointerException- ifstrisnull
-
-
Method Detail
-
length
public int length()
Returns the length (character count) of this string buffer.- Specified by:
lengthin interfaceCharSequence- 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
minimumCapacityargument. - Twice the old capacity, plus
2.
minimumCapacityargument is nonpositive, this method takes no action and simply returns.- Parameters:
minimumCapacity- the minimum desired capacity.
- The
-
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 thannewLength, 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 thenewLengthargument is less than the current length of the string buffer, the string buffer is truncated to contain exactly the number of characters given by thenewLengthargument.If the
newLengthargument is greater than or equal to the current length, sufficient null characters ('\u0000') are appended to the string buffer so that length becomes thenewLengthargument.The
newLengthargument must be greater than or equal to0.- Parameters:
newLength- the new length of the buffer.- Throws:
IndexOutOfBoundsException- if thenewLengthargument is negative.- See Also:
StringBuffer.length()
-
charAt
public char charAt(int index)
The specified character of the sequence currently represented by the string buffer, as indicated by theindexargument, is returned. The first character of a string buffer is at index0, the next at index1, 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:
charAtin interfaceCharSequence- Parameters:
index- the index of the desired character.- Returns:
- the character at the specified index of this string buffer.
- Throws:
IndexOutOfBoundsException- ifindexis negative or greater than or equal tolength().- See Also:
StringBuffer.length()
-
getChars
public void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
Characters are copied from this string buffer into the destination character arraydst. The first character to be copied is at indexsrcBegin; the last character to be copied is at indexsrcEnd-1. The total number of characters to be copied issrcEnd-srcBegin. The characters are copied into the subarray ofdststarting at indexdstBeginand 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 intodst.- Throws:
NullPointerException- ifdstisnull.IndexOutOfBoundsException- if any of the following is true:srcBeginis negativedstBeginis negative- the
srcBeginargument is greater than thesrcEndargument. srcEndis greater thanthis.length(), the current length of this string buffer.dstBegin+srcEnd-srcBeginis greater thandst.length
-
setCharAt
public void setCharAt(int index, char ch)
The character at the specified index of this string buffer is set toch. The string buffer is altered to represent a new character sequence that is identical to the old character sequence, except that it contains the characterchat positionindex.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- ifindexis negative or greater than or equal tolength().- See Also:
StringBuffer.length()
-
append
public AppendingStringBuffer append(Object obj)
Appends the string representation of theObjectargument 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- anObject.- Returns:
- a reference to this
AppendingStringBufferobject. - See Also:
String.valueOf(java.lang.Object),StringBuffer.append(java.lang.String)
-
append
public AppendingStringBuffer append(String str)
Appends the string to this string buffer.The characters of the
Stringargument are appended, in order, to the contents of this string buffer, increasing the length of this string buffer by the length of the argument. Ifstrisnull, 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
appendmethod. 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 argumentstr.- Parameters:
str- a string.- Returns:
- a reference to this
AppendingStringBuffer.
-
append
public AppendingStringBuffer append(AppendingStringBuffer sb)
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(StringBuilder sb)
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 thechararray 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 thenappendedto thisAppendingStringBufferobject.- Parameters:
str- the characters to be appended.- Returns:
- a reference to this
AppendingStringBufferobject.
-
append
public AppendingStringBuffer append(char[] str, int offset, int len)
Appends the string representation of a subarray of thechararray argument to this string buffer.Characters of the character array
str, starting at indexoffset, are appended, in order, to the contents of this string buffer. The length of this string buffer increases by the value oflen.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 thenappendedto thisAppendingStringBufferobject.- 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
AppendingStringBufferobject.
-
append
public AppendingStringBuffer append(boolean b)
Appends the string representation of thebooleanargument 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- aboolean.- Returns:
- a reference to this
AppendingStringBuffer. - See Also:
String.valueOf(boolean),StringBuffer.append(java.lang.String)
-
append
public AppendingStringBuffer append(char c)
Appends the string representation of thecharargument 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 thenappendedto thisAppendingStringBufferobject.- Parameters:
c- achar.- Returns:
- a reference to this
AppendingStringBufferobject.
-
append
public AppendingStringBuffer append(int i)
Appends the string representation of theintargument 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- anint.- Returns:
- a reference to this
AppendingStringBufferobject. - See Also:
String.valueOf(int),StringBuffer.append(java.lang.String)
-
append
public AppendingStringBuffer append(long l)
Appends the string representation of thelongargument 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- along.- Returns:
- a reference to this
AppendingStringBufferobject. - See Also:
String.valueOf(long),StringBuffer.append(java.lang.String)
-
append
public AppendingStringBuffer append(float f)
Appends the string representation of thefloatargument 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- afloat.- Returns:
- a reference to this
AppendingStringBufferobject. - See Also:
String.valueOf(float),StringBuffer.append(java.lang.String)
-
append
public AppendingStringBuffer append(double d)
Appends the string representation of thedoubleargument 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- adouble.- Returns:
- a reference to this
AppendingStringBufferobject. - See Also:
String.valueOf(double),StringBuffer.append(java.lang.String)
-
delete
public AppendingStringBuffer delete(int start, int end)
Removes the characters in a substring of thisAppendingStringBuffer. The substring begins at the specifiedstartand extends to the character at indexend - 1or to the end of theAppendingStringBufferif no such character exists. Ifstartis equal toend, no changes are made.- Parameters:
start- The beginning index, inclusive.end- The ending index, exclusive.- Returns:
- This string buffer.
- Throws:
StringIndexOutOfBoundsException- ifstartis negative, greater thanlength(), or greater thanend.- Since:
- 1.2
-
deleteCharAt
public AppendingStringBuffer deleteCharAt(int index)
Removes the character at the specified position in thisAppendingStringBuffer(shortening theAppendingStringBufferby one character).- Parameters:
index- Index of character to remove- Returns:
- This string buffer.
- Throws:
StringIndexOutOfBoundsException- if theindexis negative or greater than or equal tolength().- Since:
- 1.2
-
replace
public AppendingStringBuffer replace(int start, int end, String str)
Replaces the characters in a substring of thisAppendingStringBufferwith characters in the specifiedString. The substring begins at the specifiedstartand extends to the character at indexend - 1or to the end of theAppendingStringBufferif no such character exists. First the characters in the substring are removed and then the specifiedStringis inserted atstart. (TheAppendingStringBufferwill 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- ifstartis negative, greater thanlength(), or greater thanend.- Since:
- 1.2
-
substring
public String substring(int start)
Returns a newStringthat contains a subsequence of characters currently contained in thisAppendingStringBuffer.The substring begins at the specified index and extends to the end of theAppendingStringBuffer.- Parameters:
start- The beginning index, inclusive.- Returns:
- The new string.
- Throws:
StringIndexOutOfBoundsException- ifstartis less than zero, or greater than the length of thisAppendingStringBuffer.- 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
behaves in exactly the same way as the invocationsb.subSequence(begin, end)
This method is provided so that the AppendingStringBuffer class can implement thesb.substring(begin, end)
CharSequenceinterface.- Specified by:
subSequencein interfaceCharSequence- 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 newStringthat contains a subsequence of characters currently contained in thisAppendingStringBuffer. The substring begins at the specifiedstartand extends to the character at indexend - 1. An exception is thrown if- Parameters:
start- The beginning index, inclusive.end- The ending index, exclusive.- Returns:
- The new string.
- Throws:
StringIndexOutOfBoundsException- ifstartorendare negative or greater thanlength(), orstartis greater thanend.- Since:
- 1.2
-
insert
public AppendingStringBuffer insert(int index, char[] str, int offset, int len)
Inserts the string representation of a subarray of thestrarray argument into this string buffer. The subarray begins at the specifiedoffsetand extendslencharacters. The characters of the subarray are inserted into this string buffer at the position indicated byindex. The length of thisAppendingStringBufferincreases bylencharacters.- 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- ifindexis negative or greater thanlength(), oroffsetorlenare negative, or(offset+len)is greater thanstr.length.- Since:
- 1.2
-
insert
public AppendingStringBuffer insert(int offset, Object obj)
Inserts the string representation of theObjectargument 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- anObject.- Returns:
- a reference to this
AppendingStringBufferobject. - Throws:
StringIndexOutOfBoundsException- if the offset is invalid.- See Also:
String.valueOf(java.lang.Object),insert(int, java.lang.String),length()
-
insert
public AppendingStringBuffer insert(int offset, String str)
Inserts the string into this string buffer.The characters of the
Stringargument 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. Ifstrisnull, 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
-offsetin the argumentstr, if k is not less thanoffsetbut is less thanoffset+str.length() - the character at index k
-str.length()in the old character sequence, if k is not less thanoffset+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
AppendingStringBufferobject. - Throws:
StringIndexOutOfBoundsException- if the offset is invalid.- See Also:
StringBuffer.length()
- the character at index k in the old character sequence, if k is less than
-
insert
public AppendingStringBuffer insert(int offset, StringBuilder str)
Inserts the string into this string buffer.The characters of the
StringBuilderargument 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. Ifstrisnull, 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
-offsetin the argumentstr, if k is not less thanoffsetbut is less thanoffset+str.length() - the character at index k
-str.length()in the old character sequence, if k is not less thanoffset+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
AppendingStringBufferobject. - Throws:
StringIndexOutOfBoundsException- if the offset is invalid.- See Also:
StringBuffer.length()
- the character at index k in the old character sequence, if k is less than
-
insert
public AppendingStringBuffer insert(int offset, StringBuffer str)
Inserts the string into this string buffer.The characters of the
StringBufferargument 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. Ifstrisnull, 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
-offsetin the argumentstr, if k is not less thanoffsetbut is less thanoffset+str.length() - the character at index k
-str.length()in the old character sequence, if k is not less thanoffset+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
AppendingStringBufferobject. - Throws:
StringIndexOutOfBoundsException- if the offset is invalid.- See Also:
StringBuffer.length()
- the character at index k in the old character sequence, if k is less than
-
insert
public AppendingStringBuffer insert(int offset, char[] str)
Inserts the string representation of thechararray 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 theninsertedinto thisAppendingStringBufferobject at the position indicated byoffset.- Parameters:
offset- the offset.str- a character array.- Returns:
- a reference to this
AppendingStringBufferobject. - Throws:
StringIndexOutOfBoundsException- if the offset is invalid.
-
insert
public AppendingStringBuffer insert(int offset, boolean b)
Inserts the string representation of thebooleanargument 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- aboolean.- Returns:
- a reference to this
AppendingStringBufferobject. - Throws:
StringIndexOutOfBoundsException- if the offset is invalid.- See Also:
String.valueOf(boolean),StringBuffer.insert(int, java.lang.String),StringBuffer.length()
-
insert
public AppendingStringBuffer insert(int offset, char c)
Inserts the string representation of thecharargument 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 theninsertedinto thisAppendingStringBufferobject at the position indicated byoffset.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- achar.- Returns:
- a reference to this
AppendingStringBufferobject. - Throws:
IndexOutOfBoundsException- if the offset is invalid.- See Also:
StringBuffer.length()
-
insert
public AppendingStringBuffer insert(int offset, int i)
Inserts the string representation of the secondintargument 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- anint.- Returns:
- a reference to this
AppendingStringBufferobject. - Throws:
StringIndexOutOfBoundsException- if the offset is invalid.- See Also:
String.valueOf(int),StringBuffer.insert(int, java.lang.String),StringBuffer.length()
-
insert
public AppendingStringBuffer insert(int offset, long l)
Inserts the string representation of thelongargument 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 byoffset.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- along.- Returns:
- a reference to this
AppendingStringBufferobject. - Throws:
StringIndexOutOfBoundsException- if the offset is invalid.- See Also:
String.valueOf(long),StringBuffer.insert(int, java.lang.String),StringBuffer.length()
-
insert
public AppendingStringBuffer insert(int offset, float f)
Inserts the string representation of thefloatargument 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- afloat.- Returns:
- a reference to this
AppendingStringBufferobject. - Throws:
StringIndexOutOfBoundsException- if the offset is invalid.- See Also:
String.valueOf(float),StringBuffer.insert(int, java.lang.String),StringBuffer.length()
-
insert
public AppendingStringBuffer insert(int offset, double d)
Inserts the string representation of thedoubleargument 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- adouble.- Returns:
- a reference to this
AppendingStringBufferobject. - Throws:
StringIndexOutOfBoundsException- if the offset is invalid.- See Also:
String.valueOf(double),StringBuffer.insert(int, java.lang.String),StringBuffer.length()
-
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:
isthis.toString().startsWith(str, <i>k</i>)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,
-1is returned. - Throws:
NullPointerException- ifstrisnull.- 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:
If no such value of k exists, then -1 is returned.k >= Math.min(fromIndex, str.length()) && this.toString().startsWith(str, k)
- 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- ifstrisnull.- 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 valuethis.length(). The returned index is the largest value k such that
is true.this.toString().startsWith(str, k)
- 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,
-1is returned. - Throws:
NullPointerException- ifstrisnull.- 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:
If no such value of k exists, then -1 is returned.k <= Math.min(fromIndex, str.length()) && this.toString().startsWith(str, k)
- 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- ifstrisnull.- 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:
trueif the character sequence represented by the argument is a prefix of the substring of this object starting at indextoffset;falseotherwise. The result isfalseiftoffsetis negative or greater than the length of thisStringobject; otherwise the result is the same as the result of the expressionthis.subString(toffset).startsWith(prefix)
-
startsWith
public boolean startsWith(CharSequence prefix)
Tests if this AppendingStringBuffer starts with the specified prefix.- Parameters:
prefix- the prefix.- Returns:
trueif the character sequence represented by the argument is a prefix of the character sequence represented by this AppendingStringBuffer;falseotherwise. Note also thattruewill be returned if the argument is an empty string or is equal to thisAppendingStringBufferobject as determined by theequals(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:
trueif the character sequence represented by the argument is a suffix of the character sequence represented by this AppendingStringBuffer;falseotherwise. Note that the result will betrueif the argument is the empty string or is equal to thisAppendingStringBufferobject as determined by theequals(Object)method.
-
toString
public String toString()
Converts to a string representing the data in this AppendingStringBuffer. A newStringobject is allocated and initialized to contain the character sequence currently represented by this string buffer. ThisStringis then returned. Subsequent changes to the string buffer do not affect the contents of theString.Implementation advice: This method can be coded so as to create a new
Stringobject 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:
toStringin interfaceCharSequence- Overrides:
toStringin classObject- 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 istrueif and only if the argument is notnulland is aAppendingStringBufferobject or another charsequence object! that represents the same sequence of characters as this object.
-
hashCode
public int hashCode()
Returns a hash code for this AppendingStringBuffer. The hash code for aAppendingStringBufferobject is computed as
usings[0]*31ˆ(n-1) + s[1]*31ˆ(n-2) + ... + s[n-1]intarithmetic, wheres[i]is the ith character of the AppendingStringBuffer,nis the length of the AppendingStringBuffer, and^indicates exponentiation. (The hash value of the empty AppendingStringBuffer is zero.)
-
clear
public void clear()
Clears the buffer contents, but leaves the allocated size intact
-
-