共用方式為


EnumSet 類別

定義

與列舉類型搭配使用的特製化 Set 實作。

[Android.Runtime.Register("java/util/EnumSet", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E extends java.lang.Enum<E>" })]
public abstract class EnumSet : Java.Util.AbstractSet, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Lang.ICloneable
[<Android.Runtime.Register("java/util/EnumSet", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E extends java.lang.Enum<E>" })>]
type EnumSet = class
    inherit AbstractSet
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface ICloneable
繼承
屬性
實作

備註

與列舉類型搭配使用的特製化 Set 實作。 列舉集中的所有項目都必須來自建立集合時所指定、明確或隱含的單一列舉類型。 列舉集會在內部表示為位向量。 這個表示非常精簡且有效率。 這個類別的空間和時間效能應該足夠好,以允許其作為傳統 int型「位旗標」的高品質型別替代方式。 即使大量作業(例如 containsAllretainAll)在自變數也是列舉集時,也應該非常快速地執行。

方法傳 iterator 回的反覆運算器會以其 自然順序 周遊元素(宣告列舉常數的順序)。 傳回的反覆運算器較 弱一致:它永遠不會擲回 ConcurrentModificationException ,而且它可能不會顯示反覆運算進行時所發生之集合的任何修改效果。

不允許 Null 元素。 試著插入 Null 專案會擲回 NullPointerException。 嘗試測試 Null 元素是否存在,或移除 null 元素,但會正常運作。

和大部分的集合實作一樣, EnumSet 不會同步處理。 如果多個線程同時存取列舉集,而且至少有一個線程修改集合,則它應該在外部同步處理。 這通常是藉由在自然封裝列舉集的某些對象上進行同步處理來完成。 如果不存在這類物件,則集合應該使用 Collections#synchronizedSet 方法「包裝」。 這最好是在建立時完成,以防止意外的未同步存取:

Set&lt;MyEnum&gt; s = Collections.synchronizedSet(EnumSet.noneOf(MyEnum.class));

實作注意事項:所有基本作業都會以固定時間執行。 他們很可能(雖然不保證)比他們的 HashSet 對手快得多。 即使大量作業在常數時間執行,如果自變數也是列舉集。

這個類別是 Java Collections Framework 的成員

已在1.5中新增。

java.util.EnumSetJava 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

建構函式

EnumSet(IntPtr, JniHandleOwnership)

建立 JNI 物件的 Managed 表示法時使用的建構函式;由運行時間呼叫。

屬性

Class

傳回這個 Object的運行時間類別。

(繼承來源 Object)
Handle

基礎Android實例的句柄。

(繼承來源 Object)
IsEmpty

要新增

(繼承來源 AbstractCollection)
JniIdentityHashCode

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)
JniPeerMembers

與列舉類型搭配使用的特製化 Set 實作。

PeerReference

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)
ThresholdClass

此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。

ThresholdType

此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。

方法

Add(Object)

要新增

(繼承來源 AbstractCollection)
AddAll(ICollection)

要新增

(繼承來源 AbstractCollection)
AllOf(Class)

建立列舉集,其中包含指定之項目類型中的所有專案。

Clear()

要新增

(繼承來源 AbstractCollection)
Clone()

傳回這個集合的複本。

ComplementOf(EnumSet)

建立具有與指定列舉集相同項目類型的列舉集,一開始包含此類型 包含在指定集合中的所有專案。

Contains(Object)

要新增

(繼承來源 AbstractCollection)
ContainsAll(ICollection)

要新增

(繼承來源 AbstractCollection)
CopyOf(EnumSet)

使用與指定列舉集相同的項目類型建立列舉集,一開始包含相同專案(如果有的話)。

CopyOf(ICollection)

從指定的集合建立初始化的列舉集。

Dispose()

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)
Dispose(Boolean)

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)
Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
Iterator()

傳回這個集合中所含專案的反覆運算器。

(繼承來源 AbstractCollection)
JavaFinalize()

當垃圾收集決定不再參考物件時,垃圾收集行程在 物件上呼叫。

(繼承來源 Object)
NoneOf(Class)

使用指定的項目類型建立空列舉集。

Notify()

喚醒正在等候此物件監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
Of(Object)

建立一開始包含指定專案的列舉集。

Of(Object, Object)

建立一開始包含指定元素的列舉集。

Of(Object, Object, Object)

建立一開始包含指定元素的列舉集。

Of(Object, Object, Object, Object)

建立一開始包含指定元素的列舉集。

Of(Object, Object, Object, Object, Object)

建立一開始包含指定元素的列舉集。

Of(Object, Object[])

建立一開始包含指定元素的列舉集。

Range(Object, Object)

建立列舉集,一開始包含兩個指定端點所定義範圍中的所有專案。

Remove(Object)

要新增

(繼承來源 AbstractCollection)
RemoveAll(ICollection)

要新增

(繼承來源 AbstractCollection)
RetainAll(ICollection)

要新增

(繼承來源 AbstractCollection)
SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
Size()

傳回這個 Collection 包含之物件數目的計數。

(繼承來源 AbstractCollection)
ToArray()

要新增

(繼承來源 AbstractCollection)
ToArray(Object[])

要新增

(繼承來源 AbstractCollection)
ToArray<T>()

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)
ToString()

傳回物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)
Wait()

讓目前線程等候直到喚醒為止,通常是藉由em <notified/em>或<em>interrupted</em> 來喚醒它。<>

(繼承來源 Object)
Wait(Int64)

讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。

(繼承來源 Object)
Wait(Int64, Int32)

讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。

(繼承來源 Object)

明確介面實作

IJavaPeerable.Disposed()

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)
IJavaPeerable.DisposeUnlessReferenced()

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)
IJavaPeerable.Finalized()

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)
IJavaPeerable.JniManagedPeerState

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

與列舉類型搭配使用的特製化 Set 實作。

(繼承來源 Object)

擴充方法

JavaCast<TResult>(IJavaObject)

執行 Android 執行時間檢查的類型轉換。

JavaCast<TResult>(IJavaObject)

與列舉類型搭配使用的特製化 Set 實作。

GetJniTypeName(IJavaPeerable)

與列舉類型搭配使用的特製化 Set 實作。

ToEnumerable(IIterable)

與列舉類型搭配使用的特製化 Set 實作。

ToEnumerable<T>(IIterable)

與列舉類型搭配使用的特製化 Set 實作。

適用於