ArrayList 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 de matriz redimensionable de la List interfaz.
[Android.Runtime.Register("java/util/ArrayList", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class ArrayList : Java.Util.AbstractList, IDisposable, Java.IO.ISerializable, Java.Lang.ICloneable, Java.Util.IRandomAccess
[<Android.Runtime.Register("java/util/ArrayList", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type ArrayList = class
inherit AbstractList
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface ICloneable
interface IList
interface ICollection
interface IIterable
interface ISequencedCollection
interface IRandomAccess
- Herencia
- Atributos
- Implementaciones
Comentarios
Implementación de matriz redimensionable de la List interfaz. Implementa todas las operaciones de lista opcionales y permite todos los elementos, incluido null. Además de implementar la List interfaz, esta clase proporciona métodos para manipular el tamaño de la matriz que se usa internamente para almacenar la lista. (Esta clase es aproximadamente equivalente a Vector, excepto que no está sincronizada).
Las sizeoperaciones , isEmpty, get, set, iteratory listIterator se ejecutan en tiempo constante. La add operación se ejecuta en tiempo constante amortizado, es decir, agregar n elementos requiere tiempo de O(n). Todas las demás operaciones se ejecutan en tiempo lineal (aproximadamente hablando). El factor constante es bajo en comparación con el de la LinkedList implementación.
Cada ArrayList instancia tiene una capacidad. La capacidad es el tamaño de la matriz utilizada para almacenar los elementos de la lista. Siempre es tan grande como el tamaño de la lista. A medida que se agregan elementos a arrayList, su capacidad crece automáticamente. Los detalles de la directiva de crecimiento no se especifican más allá del hecho de que agregar un elemento tiene un costo de tiempo amortizado constante.
Una aplicación puede aumentar la capacidad de una ArrayList instancia antes de agregar un gran número de elementos mediante la ensureCapacity operación. Esto puede reducir la cantidad de reasignación incremental.
<fuerte>Tenga en cuenta que esta implementación no está sincronizada.</strong> Si varios subprocesos acceden a una ArrayList instancia simultáneamente y al menos uno de los subprocesos modifica la lista estructuralmente, debe sincronizarse externamente. (Una modificación estructural es cualquier operación que agrega o elimina uno o varios elementos, o cambia explícitamente el tamaño de la matriz de respaldo; simplemente establecer el valor de un elemento no es una modificación estructural). Esto se logra normalmente mediante la sincronización en algún objeto que encapsula naturalmente la lista.
Si no existe este objeto, la lista debe "encapsularse" mediante el Collections#synchronizedList Collections.synchronizedList método . Esto se hace mejor en el momento de la creación, para evitar el acceso no asincrónico accidental a la lista:
List list = Collections.synchronizedList(new ArrayList(...));
Los iteradores devueltos por los métodos y de #iterator() iterator esta clase son #listIterator(int) listIteratorem<fail-fast>/em<: si la lista se modifica estructuralmente en cualquier momento después de crear el iterador, excepto a través de los métodos o > propios ListIterator#remove() remove del iterador, el iterador producirá un ListIterator#add(Object) add.ConcurrentModificationException Por lo tanto, en el caso de la modificación simultánea, el iterador produce un error rápido y limpio, en lugar de arriesgarse a un comportamiento arbitrario y no determinista en un momento indeterminado en el futuro.
Tenga en cuenta que no se puede garantizar el comportamiento rápido de un iterador, ya que es, por lo general, imposible hacer ninguna garantía dura en presencia de modificaciones simultáneas no asincrónicas. Los iteradores rápidos de error inician ConcurrentModificationException el mejor esfuerzo. Por lo tanto, sería incorrecto escribir un programa que dependiera de esta excepción por su corrección: el comportamiento rápido del error de los iteradores solo se debe usar para detectar errores.
Esta clase es miembro del marco de colecciones de Java.
Agregado en la versión 1.2.
Java documentación para java.util.ArrayList.
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 |
|---|---|
| ArrayList() |
Construye una lista vacía con una capacidad inicial de diez. |
| ArrayList(ICollection) |
Construye una lista que contiene los elementos de la colección especificada, en el orden en que devuelve el iterador de la colección. |
| ArrayList(Int32) |
Construye una lista vacía con la capacidad inicial especificada. |
| ArrayList(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 |
| First |
Por agregar |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| IsEmpty |
Por agregar (Heredado de AbstractCollection) |
| 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 de matriz redimensionable de la |
| JniPeerMembers |
Implementación de matriz redimensionable de la |
| Last |
Por agregar |
| ModCount |
Número de veces que esta lista se ha modificado estructuralmente. (Heredado de AbstractList) |
| 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 |
|---|---|
| Add(Int32, Object) |
Por agregar (Heredado de AbstractList) |
| Add(Object) |
Por agregar (Heredado de AbstractCollection) |
| AddAll(ICollection) |
Por agregar (Heredado de AbstractCollection) |
| AddAll(Int32, ICollection) |
Por agregar (Heredado de AbstractList) |
| AddFirst(Object) |
Por agregar |
| AddLast(Object) |
Por agregar |
| Clear() |
Por agregar (Heredado de AbstractCollection) |
| Clone() |
Devuelve una copia superficial de esta |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Implementación de matriz redimensionable de la |
| Contains(Object) |
Por agregar (Heredado de AbstractCollection) |
| ContainsAll(ICollection) |
Por agregar (Heredado de AbstractCollection) |
| 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 de matriz redimensionable de la |
| EnsureCapacity(Int32) |
Aumenta la capacidad de esta |
| Equals(Object) |
Implementación de matriz redimensionable de la |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| ForEach(IConsumer) |
Implementación de matriz redimensionable de la |
| Get(Int32) |
Devuelve el elemento en la posición especificada de esta lista. |
| GetHashCode() |
Devuelve un valor de código hash para el objeto . (Heredado de Object) |
| IndexOf(Object) |
Por agregar (Heredado de AbstractList) |
| Iterator() |
Devuelve un iterador sobre los elementos de esta lista en una secuencia adecuada. (Heredado de AbstractList) |
| 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) |
| LastIndexOf(Object) |
Por agregar (Heredado de AbstractList) |
| ListIterator() |
Por agregar (Heredado de AbstractList) |
| ListIterator(Int32) |
Por agregar (Heredado de AbstractList) |
| 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) |
| Remove(Int32) |
Por agregar (Heredado de AbstractList) |
| Remove(Object) |
Por agregar (Heredado de AbstractCollection) |
| RemoveAll(ICollection) |
Por agregar (Heredado de AbstractCollection) |
| RemoveFirst() |
Por agregar |
| RemoveIf(IPredicate) |
Implementación de matriz redimensionable de la |
| RemoveLast() |
Por agregar |
| RemoveRange(Int32, Int32) |
Quita de esta lista todos los elementos cuyo índice está entre |
| ReplaceAll(IUnaryOperator) |
Implementación de matriz redimensionable de la |
| RetainAll(ICollection) |
Por agregar (Heredado de AbstractCollection) |
| Set(Int32, Object) |
Por agregar (Heredado de AbstractList) |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Implementación de matriz redimensionable de la |
| Size() |
Devuelve el número de elementos en esta lista. |
| Sort(IComparator) |
Implementación de matriz redimensionable de la |
| Spliterator() |
Crea un <em>late-binding</em> y <em>fail-fast</em> |
| SubList(Int32, Int32) |
Por agregar (Heredado de AbstractList) |
| ToArray() |
Por agregar (Heredado de AbstractCollection) |
| ToArray(Object[]) |
Por agregar (Heredado de AbstractCollection) |
| 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) |
| TrimToSize() |
Recorta la capacidad de esta |
| UnregisterFromRuntime() |
Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| 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 de matriz redimensionable de la |
| IJavaPeerable.Finalized() |
Implementación de matriz redimensionable de la |
| IJavaPeerable.JniObjectReferenceControlBlock |
Implementación de matriz redimensionable de la |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Implementación de matriz redimensionable de la |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Implementación de matriz redimensionable de la |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Implementación de matriz redimensionable de la |
| IJavaPeerable.UnregisterFromRuntime() |
Implementación de matriz redimensionable de la |
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 de matriz redimensionable de la |
| ToEnumerable(IIterable) |
Implementación de matriz redimensionable de la |
| ToEnumerable<T>(IIterable) |
Implementación de matriz redimensionable de la |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |