public final class CharArrayBuffer extends Object implements CharSequence, Serializable
Constructor and Description |
---|
CharArrayBuffer(int capacity)
Creates an instance of
CharArrayBuffer with the given initial
capacity. |
Modifier and Type | Method and Description |
---|---|
void |
append(byte[] b,
int off,
int len)
Appends
len bytes to this buffer from the given source
array starting at index off . |
void |
append(ByteArrayBuffer b,
int off,
int len)
Appends
len bytes to this buffer from the given source
array starting at index off . |
void |
append(char ch)
Appends
ch char to this buffer. |
void |
append(char[] b,
int off,
int len)
Appends
len chars to this buffer from the given source
array starting at index off . |
void |
append(CharArrayBuffer b)
Appends all chars to this buffer from the given source buffer starting
at index
0 . |
void |
append(CharArrayBuffer b,
int off,
int len)
Appends
len chars to this buffer from the given source
buffer starting at index off . |
void |
append(Object obj)
Appends chars of the textual representation of the given object to this
buffer.
|
void |
append(String str)
Appends chars of the given string to this buffer.
|
char[] |
array()
Returns reference to the underlying char array.
|
int |
capacity()
Returns the current capacity.
|
char |
charAt(int i)
Returns the
char value in this buffer at the specified
index. |
void |
clear()
Clears content of the buffer.
|
void |
ensureCapacity(int required)
Ensures that the capacity is at least equal to the specified minimum.
|
int |
indexOf(int ch)
Returns the index within this buffer of the first occurrence of the
specified character, starting the search at
0 and finishing
at length() . |
int |
indexOf(int ch,
int from,
int to)
Returns the index within this buffer of the first occurrence of the
specified character, starting the search at the specified
beginIndex and finishing at endIndex . |
boolean |
isEmpty()
|
boolean |
isFull()
|
int |
length()
Returns the length of the buffer (char count).
|
void |
setLength(int len)
Sets the length of the buffer.
|
CharSequence |
subSequence(int beginIndex,
int endIndex)
Returns a new
CharSequence that is a subsequence of this sequence. |
String |
substring(int beginIndex,
int endIndex)
Returns a substring of this buffer.
|
String |
substringTrimmed(int beginIndex,
int endIndex)
Returns a substring of this buffer with leading and trailing whitespace
omitted.
|
char[] |
toCharArray()
Converts the content of this buffer to an array of chars.
|
String |
toString()
Returns a string representation of the object.
|
public CharArrayBuffer(int capacity)
CharArrayBuffer
with the given initial
capacity.capacity
- the capacitypublic void append(byte[] b, int off, int len)
len
bytes to this buffer from the given source
array starting at index off
. The capacity of the buffer
is increased, if necessary, to accommodate all len
bytes.
The bytes are converted to chars using simple cast.
b
- the bytes to be appended.off
- the index of the first byte to append.len
- the number of bytes to append.IndexOutOfBoundsException
- if off
is out of
range, len
is negative, or
off
+ len
is out of range.public void append(ByteArrayBuffer b, int off, int len)
len
bytes to this buffer from the given source
array starting at index off
. The capacity of the buffer
is increased, if necessary, to accommodate all len
bytes.
The bytes are converted to chars using simple cast.
b
- the bytes to be appended.off
- the index of the first byte to append.len
- the number of bytes to append.IndexOutOfBoundsException
- if off
is out of
range, len
is negative, or
off
+ len
is out of range.public void append(char ch)
ch
char to this buffer. The capacity of the buffer
is increased, if necessary, to accommodate the additional char.ch
- the char to be appended.public void append(char[] b, int off, int len)
len
chars to this buffer from the given source
array starting at index off
. The capacity of the buffer
is increased, if necessary, to accommodate all len
chars.b
- the chars to be appended.off
- the index of the first char to append.len
- the number of chars to append.IndexOutOfBoundsException
- if off
is out of
range, len
is negative, or
off
+ len
is out of range.public void append(CharArrayBuffer b)
0
. The capacity of the destination buffer is
increased, if necessary, to accommodate all length()
chars.b
- the source buffer to be appended.public void append(CharArrayBuffer b, int off, int len)
len
chars to this buffer from the given source
buffer starting at index off
. The capacity of the
destination buffer is increased, if necessary, to accommodate all
len
chars.b
- the source buffer to be appended.off
- the index of the first char to append.len
- the number of chars to append.IndexOutOfBoundsException
- if off
is out of
range, len
is negative, or
off
+ len
is out of range.public void append(Object obj)
obj
- the object.public void append(String str)
str
- the string.public char[] array()
public int capacity()
public char charAt(int i)
char
value in this buffer at the specified
index. The index argument must be greater than or equal to
0
, and less than the length of this buffer.charAt
in interface CharSequence
i
- the index of the desired char value.IndexOutOfBoundsException
- if index
is
negative or greater than or equal to length()
.public void clear()
public void ensureCapacity(int required)
required
argument is non-positive, this method takes no action.required
- the minimum required capacity.public int indexOf(int ch)
0
and finishing
at length()
. If no such character occurs in this buffer within
those bounds, -1
is returned.ch
- the char to search for.-1
if the character does not occur.public int indexOf(int ch, int from, int to)
beginIndex
and finishing at endIndex
.
If no such character occurs in this buffer within the specified bounds,
-1
is returned.
There is no restriction on the value of beginIndex
and
endIndex
. If beginIndex
is negative,
it has the same effect as if it were zero. If endIndex
is
greater than length()
, it has the same effect as if it were
length()
. If the beginIndex
is greater than
the endIndex
, -1
is returned.
ch
- the char to search for.from
- the index to start the search from.to
- the index to finish the search at.-1
if the character does
not occur.public boolean isEmpty()
true
if this buffer is empty, false
otherwise.public boolean isFull()
true
if this buffer is full, false
otherwise.public int length()
length
in interface CharSequence
public void setLength(int len)
0
.len
- the new lengthIndexOutOfBoundsException
- if the
len
argument is greater than the current
capacity of the buffer or less than 0
.public CharSequence subSequence(int beginIndex, int endIndex)
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 char
s) of the
returned sequence is end - start, so if start == end then an empty sequence is
returned.subSequence
in interface CharSequence
beginIndex
- the start index, inclusiveendIndex
- the end index, exclusivepublic String substring(int beginIndex, int endIndex)
beginIndex
and extends to the character at index
endIndex - 1
.beginIndex
- the beginning index, inclusive.endIndex
- the ending index, exclusive.StringIndexOutOfBoundsException
- if the
beginIndex
is negative, or
endIndex
is larger than the length of this
buffer, or beginIndex
is larger than
endIndex
.public String substringTrimmed(int beginIndex, int endIndex)
beginIndex
and extends to the last
non-whitespace character with the index lesser than
endIndex
.beginIndex
- the beginning index, inclusive.endIndex
- the ending index, exclusive.IndexOutOfBoundsException
- if the
beginIndex
is negative, or
endIndex
is larger than the length of this
buffer, or beginIndex
is larger than
endIndex
.public char[] toCharArray()
public String toString()
Object
toString
method returns a
string that "textually represents" this object. The result should be a concise but informative
representation that is easy for a person to read. It is recommended that all subclasses override
this method.
The toString
method for class Object
returns a string consisting of the name of
the class of which the object is an instance, the at-sign character `@
', and the unsigned
hexadecimal representation of the hash code of the object. In other words, this method returns a
string equal to the value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
toString
in interface CharSequence
toString
in class Object