ICharacterIterator 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
此介面會針對文字的雙向反覆專案定義通訊協定。
[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
- 衍生
- 屬性
- 實作
備註
此介面會針對文字的雙向反覆專案定義通訊協定。 反覆運算器會逐一查看限定字元序列。 字元是以 getBeginIndex() 所傳回的值開始編製索引,然後繼續執行 getEndIndex()-1 所傳回的值。
反覆運算器會維護目前字元索引,其有效範圍是從 getBeginIndex() 到 getEndIndex():包含 getEndIndex() 值,以允許處理長度為零的文字範圍,以及基於歷史原因。 目前的索引可以藉由呼叫 getIndex() 來擷取,並透過呼叫 setIndex()、first() 和 last() 直接設定。
previous() 和 next() 方法會用於反覆專案。 如果他們會從 getBeginIndex() 移至 getEndIndex() -1 的範圍,則會傳回 DONE,表示反覆運算器已到達序列結尾。 其他方法也會傳回 DONE,以指出目前的索引超出此範圍。
範例:
從頭到尾周遊文字
{@code
public void traverseForward(CharacterIterator iter) {
for(char c = iter.first(); c != CharacterIterator.DONE; c = iter.next()) {
processChar(c);
}
}
}
從結尾到開始往後周遊文字
{@code
public void traverseBackward(CharacterIterator iter) {
for(char c = iter.last(); c != CharacterIterator.DONE; c = iter.previous()) {
processChar(c);
}
}
}
從文字中的指定位置往前和向後周遊。 此範例中的 notBoundary() 呼叫代表一些額外的停止準則。
{@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);
}
}
已在1.1中新增。
的 java.text.CharacterIterator
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
欄位
Done |
反覆運算器到達文字結尾或開頭時所傳回的常數。 |
屬性
BeginIndex |
傳回開始索引。 |
EndIndex |
傳回結束索引。 |
Handle |
取得基礎 Android 物件的 JNI 值。 (繼承來源 IJavaObject) |
Index |
傳回目前的索引。 |
JniIdentityHashCode |
傳回包裝實例的 值 |
JniManagedPeerState |
受控對等的狀態。 (繼承來源 IJavaPeerable) |
JniPeerMembers |
成員存取和調用支援。 (繼承來源 IJavaPeerable) |
PeerReference |
傳 JniObjectReference 回已包裝 Java 物件實例的 。 (繼承來源 IJavaPeerable) |
方法
Clone() |
建立此反覆運算器的複本 |
Current() |
取得目前位置的字元(如 getIndex()所傳回)。 |
Disposed() |
處置實例時呼叫。 (繼承來源 IJavaPeerable) |
DisposeUnlessReferenced() |
如果這個實例沒有未完成的參考,則呼叫 |
Finalized() |
實例完成時呼叫。 (繼承來源 IJavaPeerable) |
First() |
設定 getBeginIndex() 的位置,並傳回位於該位置的字元。 |
Last() |
如果文字空白,請將位置設定為 getEndIndex()-1 (getEndIndex() 並傳回位於該位置的字元。 |
Next() |
將反覆運算器的索引遞增一個,並傳回新索引處的字元。 |
Previous() |
將反覆運算器的索引遞減一,並傳回新索引處的字元。 |
SetIndex(Int32) |
將位置設定為文字中指定的位置,並傳回該字元。 |
SetJniIdentityHashCode(Int32) |
設定所 |
SetJniManagedPeerState(JniManagedPeerStates) |
此介面會針對文字的雙向反覆專案定義通訊協定。 (繼承來源 IJavaPeerable) |
SetPeerReference(JniObjectReference) |
設定所 |
UnregisterFromRuntime() |
取消註冊此實例,讓運行時間不會從未來的 Java.Interop.JniRuntime+JniValueManager.PeekValue 調用傳回它。 (繼承來源 IJavaPeerable) |
擴充方法
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
此介面會針對文字的雙向反覆專案定義通訊協定。 |
GetJniTypeName(IJavaPeerable) |
此介面會針對文字的雙向反覆專案定義通訊協定。 |