|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectnet.sf.saxon.tree.util.FastStringBuffer
public final class FastStringBuffer
A simple implementation of a class similar to StringBuffer. Unlike StringBuffer it is not synchronized. It also offers the capability to remove unused space. (This class could possibly be replaced by StringBuilder in JDK 1.5, but using our own class gives more control.)
| Field Summary | |
|---|---|
static int |
LARGE
|
static int |
MEDIUM
|
static int |
SMALL
|
static int |
TINY
|
| Constructor Summary | |
|---|---|
FastStringBuffer(CharSequence cs)
Create a FastStringBuffer with initial content |
|
FastStringBuffer(int initialSize)
Create a FastStringBuffer with a given initial capacity |
|
| Method Summary | |
|---|---|
void |
append(char ch)
Append a character to the buffer |
void |
append(char[] srcArray)
Append the entire contents of a character array to the buffer |
void |
append(char[] srcArray,
int start,
int length)
Append the contents of a character array to the buffer |
void |
append(CharSequence s)
Append the contents of a general CharSequence to the buffer |
void |
append(CharSlice s)
Append the contents of a CharSlice to the buffer |
void |
append(FastStringBuffer s)
Append the contents of a FastStringBuffer to the buffer |
void |
append(String s)
Append the contents of a String to the buffer |
void |
append(StringBuffer s)
Append the contents of a StringBuffer to the buffer |
void |
appendWideChar(int ch)
Append a wide character to the buffer (as a surrogate pair if necessary) |
char |
charAt(int index)
Returns the char value at the specified index. |
CharSequence |
condense()
Remove surplus space from the array. |
static String |
diagnosticPrint(CharSequence in)
Diagnostic print of the contents of a CharSequence. |
void |
ensureCapacity(int extra)
Expand the character array if necessary to ensure capacity for appended data |
boolean |
equals(Object other)
Compare equality |
char[] |
getCharArray()
Get a char[] array containing the characters. |
void |
getChars(int srcBegin,
int srcEnd,
char[] dst,
int dstBegin)
Copies characters from this FastStringBuffer into the destination character array. |
int |
hashCode()
Generate a hash code |
int |
indexOf(char ch)
Get the index of the first character equal to a given value |
void |
insertCharAt(int index,
char ch)
Insert a character at a particular offset |
void |
insertWideCharAt(int index,
int ch)
Insert wide character at a particular offset |
int |
length()
Returns the length of this character sequence. |
void |
prepend(char ch)
Insert a given character at the start of the buffer |
void |
prependRepeated(char ch,
int repeat)
Insert a given character N times at the start of the buffer |
void |
prependWideChar(int ch)
Prepend a wide character to the buffer (as a surrogate pair if necessary) |
void |
removeCharAt(int index)
Remove a character at a particular offset |
void |
setCharAt(int index,
char ch)
Set the character at a particular offset |
void |
setLength(int length)
Set the length. |
CharSequence |
subSequence(int start,
int end)
Returns a new CharSequence that is a subsequence of this sequence. |
String |
toString()
Convert contents of the FastStringBuffer to a string |
void |
write(Writer writer)
Write the value to a writer |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final int TINY
public static final int SMALL
public static final int MEDIUM
public static final int LARGE
| Constructor Detail |
|---|
public FastStringBuffer(int initialSize)
initialSize - the initial capacitypublic FastStringBuffer(CharSequence cs)
cs - the initial content. The buffer is created with just enough capacity for
this content (it will be expanded if more content is added later).| Method Detail |
|---|
public void append(String s)
s - the String to be appendedpublic void append(CharSlice s)
s - the String to be appendedpublic void append(FastStringBuffer s)
s - the FastStringBuffer to be appendedpublic void append(StringBuffer s)
s - the StringBuffer to be appendedpublic void append(CharSequence s)
append in interface AppendableCharSequences - the CharSequence to be appended
public void append(char[] srcArray,
int start,
int length)
srcArray - the array whose contents are to be addedstart - the offset of the first character in the array to be copiedlength - the number of characters to be copiedpublic void append(char[] srcArray)
srcArray - the array whose contents are to be addedpublic void append(char ch)
ch - the character to be addedpublic void appendWideChar(int ch)
ch - the character, as a 32-bit Unicode codepointpublic void prependWideChar(int ch)
ch - the character, as a 32-bit Unicode codepointpublic int length()
chars in the sequence.
length in interface CharSequencechars in this sequencepublic char charAt(int index)
char value at the specified index. An index ranges from zero
to length() - 1. The first char value of the sequence is at
index zero, the next at index one, and so on, as for array
indexing.
If the char value specified by the index is a
surrogate, the surrogate
value is returned.
charAt in interface CharSequenceindex - the index of the char value to be returned
char value
IndexOutOfBoundsException - if the index argument is negative or not less than
length()
public CharSequence subSequence(int start,
int end)
CharSequence that is a subsequence of this sequence.
The subsequence starts with the char value at the specified index and
ends with the char value at index end - 1. The length
(in chars) of the
returned sequence is end - start, so if start == end
then an empty sequence is returned.
subSequence in interface CharSequencestart - the start index, inclusiveend - the end index, exclusive
IndexOutOfBoundsException - if start or end are negative,
if end is greater than length(),
or if start is greater than end
public void getChars(int srcBegin,
int srcEnd,
char[] dst,
int dstBegin)
The first character to be copied is at index srcBegin;
the last character to be copied is at index srcEnd-1
(thus 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
srcBegin - index of the first character in the string
to copy.srcEnd - index after the last character in the string
to copy.dst - the destination array.dstBegin - the start offset in the destination array.
IndexOutOfBoundsException - If any of the following
is true:
srcBegin is negative.
srcBegin is greater than srcEnd
srcEnd is greater than the length of this
string
dstBegin is negative
dstBegin+(srcEnd-srcBegin) is larger than
dst.lengthpublic int indexOf(char ch)
ch - the character to search for
public String toString()
toString in interface CharSequencetoString in class Objectpublic boolean equals(Object other)
equals in class Objectpublic int hashCode()
hashCode in class Objectpublic char[] getCharArray()
public void setCharAt(int index,
char ch)
index - the index of the character to be setch - the new character to overwrite the existing character at that location
IndexOutOfBoundsException - if int<0 or int>=length()
public void insertCharAt(int index,
char ch)
index - the index of the character to be setch - the new character to insert at that location
IndexOutOfBoundsException - if int<0 or int>=length()
public void insertWideCharAt(int index,
int ch)
index - the index of the character to be setch - the character, as a 32-bit Unicode codepoint
IndexOutOfBoundsException - if int<0 or int>=length()public void removeCharAt(int index)
index - the index of the character to be set
IndexOutOfBoundsException - if int<0 or int>=length()public void prepend(char ch)
ch - the character to insert
public void prependRepeated(char ch,
int repeat)
ch - the character to insertrepeat - the number of occurrences required. Supplying 0 or a negative number is OK,
and is treated as a no-op.public void setLength(int length)
setLength in interface AppendableCharSequencelength - the new lengthpublic void ensureCapacity(int extra)
extra - the amount of additional capacity needed, in characterspublic CharSequence condense()
public void write(Writer writer)
throws IOException
writer - the writer to which the content is to be written
IOExceptionpublic static String diagnosticPrint(CharSequence in)
in - the CharSequence whose contents are to be displayed.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||