- java.lang.Object
-
- javax.swing.text.Segment
-
- All Implemented Interfaces:
- CharSequence, Cloneable, CharacterIterator
public class Segment extends Object implements Cloneable, CharacterIterator, 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
Fields Modifier and Type Field and Description 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
Constructors Constructor and Description Segment()
Creates a new segment.Segment(char[] array, int offset, int count)
Creates a new segment referring to an existing array.
-
Method Summary
Methods Modifier and Type Method and Description char
charAt(int index)
Returns thechar
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 newCharSequence
that is a subsequence of this sequence.String
toString()
Converts a segment into a String.
-
-
-
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 tooffset
- the offset into the arraycount
- 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 interfaceCharSequence
- Overrides:
toString
in classObject
- Returns:
- the string
-
first
public char first()
Sets the position to getBeginIndex() and returns the character at that position.- Specified by:
first
in interfaceCharacterIterator
- Returns:
- the first character in the text, or DONE if the text is empty
- Since:
- 1.3
- 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 interfaceCharacterIterator
- Returns:
- the last character in the text, or DONE if the text is empty
- Since:
- 1.3
- See Also:
getEndIndex()
-
current
public char current()
Gets the character at the current position (as returned by getIndex()).- Specified by:
current
in interfaceCharacterIterator
- Returns:
- the character at the current position or DONE if the current position is off the end of the text.
- Since:
- 1.3
- 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 interfaceCharacterIterator
- Returns:
- the character at the new position or DONE if the new position is off the end of the text range.
- Since:
- 1.3
-
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 interfaceCharacterIterator
- Returns:
- the character at the new position or DONE if the current position is equal to getBeginIndex().
- Since:
- 1.3
-
setIndex
public char setIndex(int position)
Sets the position to the specified position in the text and returns that character.- Specified by:
setIndex
in interfaceCharacterIterator
- 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()
- Since:
- 1.3
-
getBeginIndex
public int getBeginIndex()
Returns the start index of the text.- Specified by:
getBeginIndex
in interfaceCharacterIterator
- Returns:
- the index at which the text begins.
- Since:
- 1.3
-
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 interfaceCharacterIterator
- Returns:
- the index after the last character in the text
- Since:
- 1.3
-
getIndex
public int getIndex()
Returns the current index.- Specified by:
getIndex
in interfaceCharacterIterator
- Returns:
- the current index.
- Since:
- 1.3
-
charAt
public char charAt(int index)
Returns thechar
value at the specified index. An index ranges from zero to length() - 1. The firstchar
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 interfaceCharSequence
- Parameters:
index
- the index of thechar
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-bitchar
s in the sequence.- Specified by:
length
in interfaceCharSequence
- Returns:
- the number of
char
s in this sequence - Since:
- 1.6
-
subSequence
public CharSequence subSequence(int start, int end)
Returns a newCharSequence
that is a subsequence of this sequence. The subsequence starts with thechar
value at the specified index and ends with thechar
value at index end - 1. The length (inchar
s) of the returned sequence is end - start, so if start == end then an empty sequence is returned.- Specified by:
subSequence
in interfaceCharSequence
- Parameters:
start
- the start index, inclusiveend
- the end index, exclusive- Returns:
- the specified subsequence
- Since:
- 1.6
-
-
Nederlandse vertaling
U hebt gevraagd om deze site in het Nederlands te bezoeken. Voor nu wordt alleen de interface vertaald, maar nog niet alle inhoud.Als je me wilt helpen met vertalingen, is je bijdrage welkom. Het enige dat u hoeft te doen, is u op de site registreren en mij een bericht sturen waarin u wordt gevraagd om u toe te voegen aan de groep vertalers, zodat u de gewenste pagina's kunt vertalen. Een link onderaan elke vertaalde pagina geeft aan dat u de vertaler bent en heeft een link naar uw profiel.
Bij voorbaat dank.
Document heeft de 11/06/2005 gemaakt, de laatste keer de 04/03/2020 gewijzigd
Bron van het afgedrukte document:https://www.gaudry.be/nl/java-api-rf-javax/swing/text/segment.html
De infobrol is een persoonlijke site waarvan de inhoud uitsluitend mijn verantwoordelijkheid is. De tekst is beschikbaar onder CreativeCommons-licentie (BY-NC-SA). Meer info op de gebruiksvoorwaarden en de auteur.
Referenties
Deze verwijzingen en links verwijzen naar documenten die geraadpleegd zijn tijdens het schrijven van deze pagina, of die aanvullende informatie kunnen geven, maar de auteurs van deze bronnen kunnen niet verantwoordelijk worden gehouden voor de inhoud van deze pagina.
De auteur Deze site is als enige verantwoordelijk voor de manier waarop de verschillende concepten, en de vrijheden die met de referentiewerken worden genomen, hier worden gepresenteerd. Vergeet niet dat u meerdere broninformatie moet doorgeven om het risico op fouten te verkleinen.