Package com.ibm.icu.impl
Class CharacterIteratorWrapper
java.lang.Object
com.ibm.icu.text.UCharacterIterator
com.ibm.icu.impl.CharacterIteratorWrapper
- All Implemented Interfaces:
UForwardCharacterIterator
,Cloneable
This class is a wrapper around CharacterIterator and implements the
UCharacterIterator protocol
-
Field Summary
FieldsFields inherited from interface com.ibm.icu.text.UForwardCharacterIterator
DONE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionclone()
Creates a clone of this iterator.int
current()
Returns the code unit at the current index.Returns ajava.text.CharacterIterator
object for the underlying text of this iterator.int
getIndex()
Gets the current index in text.int
Returns the length of the textint
getText
(char[] fillIn, int offset) Fills the buffer with the underlying text storage of the iterator If the buffer capacity is not enough a exception is thrown.int
moveIndex
(int delta) Moves the current position by the number of code units specified, either forward or backward depending on the sign of delta (positive or negative respectively).int
next()
Returns the UTF16 code unit at index, and increments to the next code unit (post-increment semantics).int
previous()
Decrement to the position of the previous code unit in the text, and return it (pre-decrement semantics).void
setIndex
(int index) Sets the index to the specified index in the text.void
Sets the current index to the limit.Methods inherited from class com.ibm.icu.text.UCharacterIterator
currentCodePoint, getInstance, getInstance, getInstance, getInstance, getInstance, getInstance, getText, getText, moveCodePointIndex, nextCodePoint, previousCodePoint, setToStart
-
Field Details
-
iterator
-
-
Constructor Details
-
CharacterIteratorWrapper
-
-
Method Details
-
current
public int current()Description copied from class:UCharacterIterator
Returns the code unit at the current index. If index is out of range, returns DONE. Index is not changed.- Specified by:
current
in classUCharacterIterator
- Returns:
- current code unit
- See Also:
-
getLength
public int getLength()Description copied from class:UCharacterIterator
Returns the length of the text- Specified by:
getLength
in classUCharacterIterator
- Returns:
- length of the text
- See Also:
-
getIndex
public int getIndex()Description copied from class:UCharacterIterator
Gets the current index in text.- Specified by:
getIndex
in classUCharacterIterator
- Returns:
- current index in text.
- See Also:
-
next
public int next()Description copied from class:UCharacterIterator
Returns the UTF16 code unit at index, and increments to the next code unit (post-increment semantics). If index is out of range, DONE is returned, and the iterator is reset to the limit of the text.- Specified by:
next
in interfaceUForwardCharacterIterator
- Specified by:
next
in classUCharacterIterator
- Returns:
- the next UTF16 code unit, or DONE if the index is at the limit of the text.
- See Also:
-
previous
public int previous()Description copied from class:UCharacterIterator
Decrement to the position of the previous code unit in the text, and return it (pre-decrement semantics). If the resulting index is less than 0, the index is reset to 0 and DONE is returned.- Specified by:
previous
in classUCharacterIterator
- Returns:
- the previous code unit in the text, or DONE if the new index is before the start of the text.
- See Also:
-
setIndex
public void setIndex(int index) Description copied from class:UCharacterIterator
Sets the index to the specified index in the text.- Specified by:
setIndex
in classUCharacterIterator
- Parameters:
index
- the index within the text.- See Also:
-
setToLimit
public void setToLimit()Description copied from class:UCharacterIterator
Sets the current index to the limit.- Overrides:
setToLimit
in classUCharacterIterator
- See Also:
-
getText
public int getText(char[] fillIn, int offset) Description copied from class:UCharacterIterator
Fills the buffer with the underlying text storage of the iterator If the buffer capacity is not enough a exception is thrown. The capacity of the fill in buffer should at least be equal to length of text in the iterator obtained by callinggetLength()
). Usage:UChacterIterator iter = new UCharacterIterator.getInstance(text); char[] buf = new char[iter.getLength()]; iter.getText(buf); OR char[] buf= new char[1]; int len = 0; for(;;){ try{ len = iter.getText(buf); break; }catch(IndexOutOfBoundsException e){ buf = new char[iter.getLength()]; } }
- Specified by:
getText
in classUCharacterIterator
- Parameters:
fillIn
- an array of chars to fill with the underlying UTF-16 code units.offset
- the position within the array to start putting the data.- Returns:
- the number of code units added to fillIn, as a convenience
- See Also:
-
clone
Creates a clone of this iterator. Clones the underlying character iterator.- Overrides:
clone
in classUCharacterIterator
- Returns:
- copy of this iterator
- See Also:
-
moveIndex
public int moveIndex(int delta) Description copied from class:UCharacterIterator
Moves the current position by the number of code units specified, either forward or backward depending on the sign of delta (positive or negative respectively). If the resulting index would be less than zero, the index is set to zero, and if the resulting index would be greater than limit, the index is set to limit.- Overrides:
moveIndex
in classUCharacterIterator
- Parameters:
delta
- the number of code units to move the current index.- Returns:
- the new index.
-
getCharacterIterator
Description copied from class:UCharacterIterator
Returns ajava.text.CharacterIterator
object for the underlying text of this iterator. The returned iterator is independent of this iterator.- Overrides:
getCharacterIterator
in classUCharacterIterator
- Returns:
- java.text.CharacterIterator object
- See Also:
-