EnumMap Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Implementación especializada Map para su uso con claves de tipo de enumeración.
[Android.Runtime.Register("java/util/EnumMap", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "K extends java.lang.Enum<K>", "V" })]
public class EnumMap : Java.Util.AbstractMap, IDisposable, Java.IO.ISerializable, Java.Lang.ICloneable
[<Android.Runtime.Register("java/util/EnumMap", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "K extends java.lang.Enum<K>", "V" })>]
type EnumMap = class
inherit AbstractMap
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface ICloneable
interface IMap
- Herencia
- Atributos
- Implementaciones
Comentarios
Implementación especializada Map para su uso con claves de tipo de enumeración. Todas las claves de un mapa de enumeración deben proceder de un único tipo de enumeración que se especifica, explícita o implícitamente, cuando se crea el mapa. Los mapas de enumeración se representan internamente como matrices. Esta representación es extremadamente compacta y eficiente.
Los mapas de enumeración se mantienen en el orden natural de sus claves (el orden en el que se declaran las constantes de enumeración). Esto se refleja en los iteradores devueltos por las vistas de colecciones (#keySet(), #entrySet()y #values()).
Los iteradores devueltos por las vistas de colección son poco coherentes: nunca se inician ConcurrentModificationException y pueden o no mostrar los efectos de las modificaciones en el mapa que se producen mientras la iteración está en curso.
No se permiten claves NULL. Los intentos de insertar una clave nula producirán NullPointerException. Intenta probar la presencia de una clave nula o quitar una, sin embargo, funcionará correctamente. Se permiten valores NULL.
Al igual que la mayoría de las implementaciones de EnumMap recopilación no se sincronizan. Si varios subprocesos acceden simultáneamente a una asignación de enumeración y al menos uno de los subprocesos modifica el mapa, se debe sincronizar externamente. Esto se logra normalmente mediante la sincronización en algún objeto que encapsula naturalmente el mapa de enumeración. Si no existe este objeto, el mapa debe "encapsularse" mediante el Collections#synchronizedMap método . Esto se hace mejor en el momento de la creación, para evitar el acceso no sincronizado accidental:
Map<EnumKey, V> m
= Collections.synchronizedMap(new EnumMap<EnumKey, V>(...));
Nota de implementación: todas las operaciones básicas se ejecutan en tiempo constante. Es probable que sean (aunque no garantizados) para ser más rápidos que sus HashMap homólogos.
Esta clase es miembro del marco de colecciones de Java.
Agregado en 1.5.
Java documentación para java.util.EnumMap.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.
Constructores
| Nombre | Description |
|---|---|
| EnumMap(Class) |
Crea una asignación de enumeración vacía con el tipo de clave especificado. |
| EnumMap(EnumMap) |
Crea un mapa de enumeración con el mismo tipo de clave que el mapa de enumeración especificado, que inicialmente contiene las mismas asignaciones (si las hay). |
| EnumMap(IDictionary) |
Crea un mapa de enumeración inicializado a partir del mapa especificado. |
| EnumMap(IntPtr, JniHandleOwnership) |
Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución. |
Propiedades
| Nombre | Description |
|---|---|
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| IsEmpty |
Por agregar (Heredado de AbstractMap) |
| JniIdentityHashCode |
Obtiene el código hash de identidad asignado a este Java del mismo nivel por el tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| JniManagedPeerState |
Implementación especializada |
| JniPeerMembers |
Implementación especializada |
| PeerReference |
Obtiene la referencia de objeto JNI para este Java del mismo nivel. (Heredado de Object) |
| ThresholdClass |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
| ThresholdType |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
Métodos
| Nombre | Description |
|---|---|
| Clear() |
Por agregar (Heredado de AbstractMap) |
| Clone() |
Devuelve una copia superficial de este mapa de enumeración. |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Implementación especializada |
| ContainsKey(Object) |
Por agregar (Heredado de AbstractMap) |
| ContainsValue(Object) |
Por agregar (Heredado de AbstractMap) |
| Dispose() |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| Dispose(Boolean) |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| DisposeUnlessReferenced() |
Implementación especializada |
| EntrySet() |
Devuelve una |
| Equals(Object) |
Implementación especializada |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| Get(Object) |
Por agregar (Heredado de AbstractMap) |
| GetHashCode() |
Devuelve un valor de código hash para el objeto . (Heredado de Object) |
| JavaFinalize() |
Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto . (Heredado de Object) |
| KeySet() |
Por agregar (Heredado de AbstractMap) |
| Notify() |
Activa un único subproceso que está esperando en el monitor de este objeto. (Heredado de Object) |
| NotifyAll() |
Activa todos los subprocesos que están esperando en el monitor de este objeto. (Heredado de Object) |
| Put(Object, Object) |
Por agregar (Heredado de AbstractMap) |
| PutAll(IDictionary) |
Por agregar (Heredado de AbstractMap) |
| Remove(Object) |
Por agregar (Heredado de AbstractMap) |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Implementación especializada |
| Size() |
Por agregar (Heredado de AbstractMap) |
| ToArray<T>() |
Crea una matriz administrada a partir de este contenedor de matriz Java. (Heredado de Object) |
| ToString() |
Devuelve una representación de cadena del objeto . (Heredado de Object) |
| UnregisterFromRuntime() |
Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| Values() |
Por agregar (Heredado de AbstractMap) |
| Wait() |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em< o >em<interrumpido>/em<.><> (Heredado de Object) |
| Wait(Int64, Int32) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
| Wait(Int64) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| IJavaPeerable.Disposed() |
Implementación especializada |
| IJavaPeerable.Finalized() |
Implementación especializada |
| IJavaPeerable.JniObjectReferenceControlBlock |
Implementación especializada |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Implementación especializada |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Implementación especializada |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Implementación especializada |
| IJavaPeerable.UnregisterFromRuntime() |
Implementación especializada |
Métodos de extensión
| Nombre | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtiene el nombre JNI del tipo de la instancia |
| JavaAs<TResult>(IJavaPeerable) |
Intente coerción |
| JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
| JavaCast<TResult>(IJavaObject) |
Implementación especializada |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |