is new.
java.lang.Objectjavax.swing.text.Segment
CharSequence
,
Cloneable
,
CharacterIterator
public class Segment
,
CharSequence
A segment of a character array representing a fragment of text. It should be treated as immutable even though the array is directly accessible. This gives fast access to fragments of text without the overhead of copying around characters. This is effectively an unprotected String.
The Segment implements the java.text.CharacterIterator interface to support use with the i18n support without copying text into a string.
Field Summary
|
|
|---|---|
char[]
|
array
This is the array containing the text of interest.
|
int
|
count
This is the number of array elements that make up the text of interest.
|
int
|
offset
This is the offset into the array that the desired text begins.
|
Fields inherited from interface java.text.
CharacterIterator
|
|---|
DONE
|
Constructor Summary
|
|
|---|---|
Segment
()
Creates a new segment.
|
|
Segment
(char[] array, int offset, int count)
Creates a new segment referring to an existing array.
|
|
Method Summary
|
|
|---|---|
char
|
charAt
(int index)
Returns the char value at the specified index.
|
Object
|
clone
()
Creates a shallow copy.
|
char
|
current
()
Gets the character at the current position (as returned by getIndex()).
|
char
|
first
()
Sets the position to getBeginIndex() and returns the character at that position.
|
int
|
getBeginIndex
()
Returns the start index of the text.
|
int
|
getEndIndex
()
Returns the end index of the text.
|
int
|
getIndex
()
Returns the current index.
|
boolean
|
isPartialReturn
()
Flag to indicate that partial returns are valid.
|
char
|
last
()
Sets the position to getEndIndex()-1 (getEndIndex() if the text is empty) and returns the character at that position.
|
int
|
length
()
Returns the length of this character sequence.
|
char
|
next
()
Increments the iterator's index by one and returns the character at the new index.
|
char
|
previous
()
Decrements the iterator's index by one and returns the character at the new index.
|
char
|
setIndex
(int position)
Sets the position to the specified position in the text and returns that character.
|
void
|
setPartialReturn
(boolean p)
Flag to indicate that partial returns are valid.
|
CharSequence
|
subSequence
(int start, int end)
Returns a new CharSequence that is a subsequence of this sequence.
|
String
|
toString
()
Converts a segment into a String.
|
Methods inherited from class java.lang.
Object
|
|---|
equals
,
finalize
,
getClass
,
hashCode
,
notify
,
notifyAll
,
wait
,
wait
,
wait
|
Field Detail
|
|---|
array
public char[]
array
This is the array containing the text of interest. This array should never be modified; it is available only for efficiency.
offset
public int
offset
This is the offset into the array that the desired text begins.
count
public int
count
This is the number of array elements that make up the text of interest.
Constructor Detail
|
|---|
Segment
public
Segment
()
Creates a new segment.
Segment
public
Segment
(char[] array, int offset, int count)
Creates a new segment referring to an existing array.
Parameters:
array - the array to refer to
offset - the offset into the array
count - the number of characters
Method Detail
|
|---|
setPartialReturn
public void
setPartialReturn
(boolean p)
Flag to indicate that partial returns are valid. If the flag is true, an implementation of the interface method Document.getText(position,length,Segment) should return as much text as possible without making a copy. The default state of the flag is false which will cause Document.getText(position,length,Segment) to provide the same return behavior it always had, which may or may not make a copy of the text depending upon the request.
Parameters:
p - whether or not partial returns are valid.
Since:
1.4
isPartialReturn
public boolean
isPartialReturn
()
Flag to indicate that partial returns are valid.
Returns:
whether or not partial returns are valid.
Since:
1.4
toString
public
String
toString
()
Converts a segment into a String.
Specified by:
toString
in interface
CharSequence
Overrides:
toString
in class
Object
Returns:
the string
first
public char
first
()
Sets the position to getBeginIndex() and returns the character at that position.
Specified by:
first
in interface
CharacterIterator
Returns:
the first character in the text, or DONE if the text is empty
See Also:
getBeginIndex()
last
public char
last
()
Sets the position to getEndIndex()-1 (getEndIndex() if the text is empty) and returns the character at that position.
Specified by:
last
in interface
CharacterIterator
Returns:
the last character in the text, or DONE if the text is empty
See Also:
getEndIndex()
current
public char
current
()
Gets the character at the current position (as returned by getIndex()).
Specified by:
current
in interface
CharacterIterator
Returns:
the character at the current position or DONE if the current position is off the end of the text.
See Also:
getIndex()
next
public char
next
()
Increments the iterator's index by one and returns the character at the new index. If the resulting index is greater or equal to getEndIndex(), the current index is reset to getEndIndex() and a value of DONE is returned.
Specified by:
next
in interface
CharacterIterator
Returns:
the character at the new position or DONE if the new position is off the end of the text range.
previous
public char
previous
()
Decrements the iterator's index by one and returns the character at the new index. If the current index is getBeginIndex(), the index remains at getBeginIndex() and a value of DONE is returned.
Specified by:
previous
in interface
CharacterIterator
Returns:
the character at the new position or DONE if the current position is equal to getBeginIndex().
setIndex
public char
setIndex
(int position)
Sets the position to the specified position in the text and returns that character.
Specified by:
setIndex
in interface
CharacterIterator
Parameters:
position - the position within the text. Valid values range from getBeginIndex() to getEndIndex(). An IllegalArgumentException is thrown if an invalid value is supplied.
Returns:
the character at the specified position or DONE if the specified position is equal to getEndIndex()
getBeginIndex
public int
getBeginIndex
()
Returns the start index of the text.
Specified by:
getBeginIndex
in interface
CharacterIterator
Returns:
the index at which the text begins.
getEndIndex
public int
getEndIndex
()
Returns the end index of the text. This index is the index of the first character following the end of the text.
Specified by:
getEndIndex
in interface
CharacterIterator
Returns:
the index after the last character in the text
getIndex
public int
getIndex
()
Returns the current index.
Specified by:
getIndex
in interface
CharacterIterator
Returns:
the current index.
charAt
public char
charAt
(int index)
Returns the 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.
Specified by:
charAt
in interface
CharSequence
Parameters:
index - the index of the char value to be returned
Returns:
the specified char value
Since:
1.6
length
public int
length
()
Returns the length of this character sequence. The length is the number of 16-bit chars in the sequence.
Specified by:
length
in interface
CharSequence
Returns:
the number of chars in this sequence
Since:
1.6
subSequence
public
CharSequence
subSequence
(int start, int end)
Returns a new 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.
Specified by:
subSequence
in interface
CharSequence
|
|
|---|---|
|
|
|
|
|
|
Parameters:
start - the start index, inclusive
end - the end index, exclusive
Returns:
the specified subsequence
Since:
1.6
|
|---|
|
|
|
|---|---|
|
|
|
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|---|
|
|
|---|
clone
public
Object
public char[]clone
array()
Creates a shallow copy.
Specified by:
clone
in interface
CharacterIterator
Overrides:
clone
in class
Object
Returns:
the copy
See Also:
Cloneable
public intoffset
public intcount
|
|---|
publicSegment()
publicSegment(char[] array, int offset, int count)
|
|---|
public voidsetPartialReturn(boolean p)
public booleanisPartialReturn()
publicStringtoString()
public charfirst()
public charlast()
public charcurrent()
public charnext()
public charprevious()
public charsetIndex(int position)
public intgetBeginIndex()
public intgetEndIndex()
public intgetIndex()
publicObjectclone()