ICharacterIterator Schnittstelle

Definition

Diese Schnittstelle definiert ein Protokoll für bidirektionale Iteration über Text.

[Android.Runtime.Register("java/text/CharacterIterator", "", "Java.Text.ICharacterIteratorInvoker")]
public interface ICharacterIterator : IDisposable, Java.Interop.IJavaPeerable, Java.Lang.ICloneable
[<Android.Runtime.Register("java/text/CharacterIterator", "", "Java.Text.ICharacterIteratorInvoker")>]
type ICharacterIterator = interface
    interface ICloneable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Abgeleitet
Attribute
Implementiert

Hinweise

Diese Schnittstelle definiert ein Protokoll für bidirektionale Iteration über Text. Der Iterator durchläuft eine begrenzungsgebundene Abfolge von Zeichen. Zeichen werden mit Werten indiziert, die mit dem von getBeginIndex() zurückgegebenen Wert beginnen und den von getEndIndex()-1 zurückgegebenen Wert fortsetzen.

Iteratoren verwalten einen aktuellen Zeichenindex, dessen gültiger Bereich von getBeginIndex() bis getEndIndex(); Der Wert "getEndIndex()" ist enthalten, um die Behandlung von Textbereichen der Länge Null und aus historischen Gründen zu ermöglichen. Der aktuelle Index kann abgerufen werden, indem getIndex() aufgerufen und direkt durch Aufrufen von setIndex(), first() und last() festgelegt wird.

Die Methoden "previous()" und "next()" werden für die Iteration verwendet. Sie geben DONE zurück, wenn sie außerhalb des Bereichs von getBeginIndex() zu getEndIndex() -1 verschoben würden, was signalisiert, dass der Iterator das Ende der Sequenz erreicht hat. DONE wird auch von anderen Methoden zurückgegeben, um anzugeben, dass sich der aktuelle Index außerhalb dieses Bereichs befindet.

Beispiele:

Durchlaufen des Texts von Anfang bis Ende

{@code
            public void traverseForward(CharacterIterator iter) {
                for(char c = iter.first(); c != CharacterIterator.DONE; c = iter.next()) {
                    processChar(c);
                }
            }
            }

Durchlaufen sie den Text rückwärts, von Ende bis Anfang

{@code
            public void traverseBackward(CharacterIterator iter) {
                for(char c = iter.last(); c != CharacterIterator.DONE; c = iter.previous()) {
                    processChar(c);
                }
            }
            }

Durchlaufen Sie sowohl vorwärts als auch rückwärts von einer bestimmten Position im Text. Aufrufe an notBoundary() in diesem Beispiel stellen einige zusätzliche Stoppkriterien dar.

{@code
            public void traverseOut(CharacterIterator iter, int pos) {
                for (char c = iter.setIndex(pos);
                         c != CharacterIterator.DONE && notBoundary(c);
                         c = iter.next()) {
                }
                int end = iter.getIndex();
                for (char c = iter.setIndex(pos);
                        c != CharacterIterator.DONE && notBoundary(c);
                        c = iter.previous()) {
                }
                int start = iter.getIndex();
                processSection(start, end);
            }
            }

In 1.1 hinzugefügt.

Java-Dokumentation für java.text.CharacterIterator.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Felder

Done

Konstante, die zurückgegeben wird, wenn der Iterator entweder das Ende oder den Anfang des Texts erreicht hat.

Eigenschaften

BeginIndex

Gibt den Anfangsindex zurück.

EndIndex

Gibt den Endindex zurück.

Handle

Ruft den JNI-Wert des zugrunde liegenden Android-Objekts ab.

(Geerbt von IJavaObject)
Index

Gibt den aktuellen Index zurück.

JniIdentityHashCode

Gibt den Wert java.lang.System.identityHashCode() für die umbrochene Instanz zurück.

(Geerbt von IJavaPeerable)
JniManagedPeerState

Status des verwalteten Peers.

(Geerbt von IJavaPeerable)
JniPeerMembers

Mitgliedszugriff und Aufrufunterstützung.

(Geerbt von IJavaPeerable)
PeerReference

Gibt eine JniObjectReference der umbrochenen Java-Objektinstanz zurück.

(Geerbt von IJavaPeerable)

Methoden

Clone()

Erstellen einer Kopie dieses Iterators

Current()

Ruft das Zeichen an der aktuellen Position ab (wie von getIndex()).

Disposed()

Wird aufgerufen, wenn die Instanz verworfen wurde.

(Geerbt von IJavaPeerable)
DisposeUnlessReferenced()

Wenn keine offenen Verweise auf diese Instanz vorhanden sind, wird nichts aufgerufen Dispose(). Andernfalls wird nichts ausgeführt.

(Geerbt von IJavaPeerable)
Finalized()

Wird aufgerufen, wenn die Instanz abgeschlossen wurde.

(Geerbt von IJavaPeerable)
First()

Legt die Position auf getBeginIndex() fest und gibt das Zeichen an dieser Position zurück.

Last()

Legt die Position auf getEndIndex()-1 (getEndIndex() fest, wenn der Text leer ist, und gibt das Zeichen an dieser Position zurück.

Next()

Erhöht den Index des Iterators um eins und gibt das Zeichen am neuen Index zurück.

Previous()

Erhöht den Index des Iterators um eins und gibt das Zeichen am neuen Index zurück.

SetIndex(Int32)

Legt die Position auf die angegebene Position im Text fest und gibt dieses Zeichen zurück.

SetJniIdentityHashCode(Int32)

Legen Sie den von JniIdentityHashCode.

(Geerbt von IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Diese Schnittstelle definiert ein Protokoll für bidirektionale Iteration über Text.

(Geerbt von IJavaPeerable)
SetPeerReference(JniObjectReference)

Legen Sie den von PeerReference.

(Geerbt von IJavaPeerable)
UnregisterFromRuntime()

Heben Sie die Registrierung dieser Instanz auf, damit die Laufzeit sie nicht aus zukünftigen Java.Interop.JniRuntime+JniValueManager.PeekValue Aufrufen zurückgibt.

(Geerbt von IJavaPeerable)

Erweiterungsmethoden

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

Diese Schnittstelle definiert ein Protokoll für bidirektionale Iteration über Text.

GetJniTypeName(IJavaPeerable)

Diese Schnittstelle definiert ein Protokoll für bidirektionale Iteration über Text.

Gilt für: