SparseArray Clase

Definición

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

[Android.Runtime.Register("android/util/SparseArray", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class SparseArray : Java.Lang.Object, IDisposable, Java.Lang.ICloneable
[<Android.Runtime.Register("android/util/SparseArray", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type SparseArray = class
    inherit Object
    interface ICloneable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Herencia
SparseArray
Derivado
Atributos
Implementaciones

Comentarios

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos. SparseArrayestá diseñado para ser más eficiente para la memoria que un <>objeto HashMap</c>, ya que evita las claves de conversión boxing automática y su estructura de datos no se basa en un objeto de entrada adicional para cada asignación.

Tenga en cuenta que este contenedor mantiene sus asignaciones en una estructura de datos de matriz, mediante una búsqueda binaria para buscar claves. La implementación no está pensada para ser adecuada para las estructuras de datos que pueden contener un gran número de elementos. Por lo general, es más lento que porque HashMap las búsquedas requieren una búsqueda binaria y agrega y quita requiere insertar y eliminar entradas en la matriz. En el caso de los contenedores que contienen hasta cientos de elementos, la diferencia de rendimiento es inferior a 50%.

Para ayudar con el rendimiento, el contenedor incluye una optimización al quitar claves: en lugar de compactar su matriz inmediatamente, deja la entrada eliminada marcada como eliminada. A continuación, la entrada se puede volver a usar para la misma clave o compactarla más adelante en una sola recolección de elementos no utilizados de todas las entradas eliminadas. Esta recolección de elementos no utilizados debe realizarse siempre que sea necesario crecer la matriz o cuando se recuperen los valores de tamaño o entrada del mapa.

Es posible iterar en los elementos de este contenedor mediante #keyAt(int) y #valueAt(int). La iteración de las claves mediante keyAt(int) con valores ascendentes del índice devuelve las claves en orden ascendente. En el caso de valueAt(int), los valores correspondientes a las claves se devuelven en orden ascendente.

Java documentación para android.util.SparseArray.

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
SparseArray()

Crea una nueva SparseArray sin asignaciones.

SparseArray(Int32)

Crea una nueva SparseArray que no contiene asignaciones que no requerirán ninguna asignación de memoria adicional para almacenar el número especificado de asignaciones.

SparseArray(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 Objectobjeto .

(Heredado de Object)
Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
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

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

(Heredado de JavaObject)
JniPeerMembers

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

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
Append(Int32, Object)

Coloca un par clave-valor en la matriz, optimizando para el caso en el que la clave es mayor que todas las claves existentes de la matriz.

Clear()

Quita todas las asignaciones de clave-valor de esta SparseArray.

Clone()

Crea y devuelve una copia de este Objectobjeto .

Construct(JniObjectReference, JniObjectReferenceOptions)

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

(Heredado de JavaObject)
Contains(Int32)

Devuelve true si la clave existe en la matriz.

ContentEquals(SparseArray)

Compara el contenido de esto SparseArray con el especificado SparseArray.

ContentHashCode()

Devuelve un valor de código hash para el contenido de , SparseArraycombinando el Objects#hashCode(Object) resultado de todas sus claves y valores.

Delete(Int32)

Quita la asignación de la clave especificada, si hay alguna.

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()

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

(Heredado de JavaObject)
Equals(Object)

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

(Heredado de JavaObject)
Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
Get(Int32, Object)

Obtiene el objeto asignado a partir de la clave especificada o el objeto especificado si no se ha realizado dicha asignación.

Get(Int32)

Obtiene el objeto asignado desde la clave especificada o null si no se ha realizado dicha asignación.

GetHashCode()

Devuelve un valor de código hash para el objeto .

(Heredado de Object)
IndexOfKey(Int32)

Devuelve el índice para el que #keyAt devolvería la clave especificada o un número negativo si la clave especificada no está asignada.

IndexOfValue(Object)

Devuelve un índice para el que #valueAt devolvería el valor especificado o un número negativo si no hay claves asignadas al valor especificado.

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)
KeyAt(Int32)

Dado un índice en el intervalo 0...size()-1, devuelve la clave de la asignación de valor indexclave-valor que almacena esta sparseArray.

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(Int32, Object)

Agrega una asignación de la clave especificada al valor especificado, reemplazando la asignación anterior de la clave especificada si había una.

Remove(Int32)

Alias para #delete(int).

RemoveAt(Int32)

Quita la asignación en el índice especificado.

RemoveAtRange(Int32, Int32)

Quite un intervalo de asignaciones como un lote.

Set(Int32, Object)

Alias para #put(int, Object) admitir el operador Kotlin [index]=.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

(Heredado de JavaObject)
SetValueAt(Int32, Object)

Dado un índice en el intervalo 0...size()-1, establece un nuevo valor para la asignación clave-valor indexque almacena esta sparseArray.

Size()

Devuelve el número de asignaciones de clave-valor que almacena actualmente este SparseArray.

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)
ValueAt(Int32)

Dado un índice en el intervalo 0...size()-1, devuelve el valor de la indexasignación clave-valor que almacena esta sparseArray.

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()

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

(Heredado de JavaObject)
IJavaPeerable.Finalized()

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

(Heredado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

(Heredado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

(Heredado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

(Heredado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

(Heredado de JavaObject)
IJavaPeerable.UnregisterFromRuntime()

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

Métodos de extensión

Nombre Description
GetJniTypeName(IJavaPeerable)

Obtiene el nombre JNI del tipo de la instancia self.

JavaAs<TResult>(IJavaPeerable)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

SparseArray asigna enteros a Objetos y, a diferencia de una matriz normal de Objetos, sus índices pueden contener huecos.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

Se aplica a