public class ReplaceableString extends Object implements Replaceable
ReplaceableString
is an adapter class that implements the
Replaceable
API around an ordinary StringBuffer
.
Note: This class does not support attributes and is not
intended for general use. Most clients will need to implement
Replaceable
in their text representation class.
Replaceable
Constructor and Description |
---|
ReplaceableString()
Construct a new empty object.
|
ReplaceableString(String str)
Construct a new object with the given initial contents.
|
ReplaceableString(StringBuffer buf)
Construct a new object using
buf for internal
storage. |
Modifier and Type | Method and Description |
---|---|
int |
char32At(int offset)
Return the 32-bit code point at the given 16-bit offset into
the text.
|
char |
charAt(int offset)
Return the character at the given position in this object.
|
void |
copy(int start,
int limit,
int dest)
Copy a substring of this object, retaining attribute (out-of-band)
information.
|
void |
getChars(int srcStart,
int srcLimit,
char[] dst,
int dstStart)
Copies characters from this object into the destination
character array.
|
boolean |
hasMetaData()
Implements Replaceable
|
int |
length()
Return the number of characters contained in this object.
|
void |
replace(int start,
int limit,
char[] chars,
int charsStart,
int charsLen)
Replace a substring of this object with the given text.
|
void |
replace(int start,
int limit,
String text)
Replace zero or more characters with new characters.
|
String |
substring(int start,
int limit)
Return a substring of the given string.
|
String |
toString()
Return the contents of this object as a
String . |
public ReplaceableString(String str)
str
- initial contentspublic ReplaceableString(StringBuffer buf)
buf
for internal
storage. The contents of buf
at the time of
construction are used as the initial contents. Note!
Modifications to buf
will modify this object, and
vice versa.buf
- object to be used as internal storagepublic ReplaceableString()
public String toString()
String
.public String substring(int start, int limit)
public int length()
Replaceable
API.length
in interface Replaceable
public char charAt(int offset)
Replaceable
API.charAt
in interface Replaceable
offset
- offset into the contents, from 0 to
length()
- 1public int char32At(int offset)
char32At
in interface Replaceable
offset
- an integer between 0 and length()
-1
inclusivepublic void getChars(int srcStart, int srcLimit, char[] dst, int dstStart)
srcStart
; the last character to be copied is at
index srcLimit-1
(thus the total number of
characters to be copied is srcLimit-srcStart
). The
characters are copied into the subarray of dst
starting at index dstStart
and ending at index
dstStart + (srcLimit-srcStart) - 1
.getChars
in interface Replaceable
srcStart
- the beginning index to copy, inclusive; 0
<= start <= limit
.srcLimit
- the ending index to copy, exclusive;
start <= limit <= length()
.dst
- the destination array.dstStart
- the start offset in the destination array.public void replace(int start, int limit, String text)
Replaceable
API.replace
in interface Replaceable
start
- the beginning index, inclusive; 0 <= start
<= limit
.limit
- the ending index, exclusive; start <= limit
<= length()
.text
- new text to replace characters start
to
limit - 1
public void replace(int start, int limit, char[] chars, int charsStart, int charsLen)
replace
in interface Replaceable
start
- the beginning index, inclusive; 0 <= start
<= limit
.limit
- the ending index, exclusive; start <= limit
<= length()
.chars
- the text to replace characters start
to limit - 1
charsStart
- the beginning index into chars
,
inclusive; 0 <= start <= limit
.charsLen
- the number of characters of chars
.public void copy(int start, int limit, int dest)
copy
in interface Replaceable
start
- the beginning index, inclusive; 0 <= start <=
limit
.limit
- the ending index, exclusive; start <= limit <=
length()
.dest
- the destination index. The characters from
start..limit-1
will be copied to dest
.
Implementations of this method may assume that dest <= start ||
dest >= limit
.public boolean hasMetaData()
hasMetaData
in interface Replaceable
Copyright © 2016 Unicode, Inc. and others.