IList Interfaz

Definición

Colección ordenada, donde el usuario tiene control preciso sobre dónde se inserta cada elemento en la lista.

[Android.Runtime.Register("java/util/List", "", "Java.Util.IListInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public interface IList : IDisposable, Java.Interop.IJavaPeerable, Java.Util.ISequencedCollection
[<Android.Runtime.Register("java/util/List", "", "Java.Util.IListInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type IList = interface
    interface ICollection
    interface IIterable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface ISequencedCollection
Derivado
Atributos
Implementaciones

Comentarios

Colección ordenada, donde el usuario tiene control preciso sobre dónde se inserta cada elemento en la lista. El usuario puede acceder a los elementos por su índice entero (posición en la lista) y buscar elementos en la lista.

A diferencia de los conjuntos, las listas suelen permitir elementos duplicados. Más formalmente, las listas normalmente permiten pares de elementos e1 y e2 de modo que e1.equals(e2), y normalmente permiten varios elementos NULL si permiten elementos NULL en absoluto. No es inconcebible que alguien quiera implementar una lista que prohíbe duplicados, iniciando excepciones en tiempo de ejecución cuando el usuario intenta insertarlas, pero esperamos que este uso sea poco frecuente.

La List interfaz coloca más información, más allá de las especificadas en la Collection interfaz, en los contratos de los iteratormétodos , add, remove, equalsy hashCode . Las declaraciones para otros métodos heredados también se incluyen aquí para mayor comodidad.

La List interfaz proporciona cuatro métodos para el acceso posicional (indexado) a los elementos de lista. Las listas (como Java matrices) son de base cero. Tenga en cuenta que estas operaciones pueden ejecutarse en el tiempo proporcional al valor de índice de algunas implementaciones (por ejemplo, la LinkedList clase ). Por lo tanto, la iteración de los elementos de una lista suele ser preferible indexar a través de ella si el autor de la llamada no conoce la implementación.

La List interfaz proporciona un iterador especial, denominado ListIterator, que permite la inserción y sustitución de elementos, y el acceso bidireccional además de las operaciones normales que proporciona la Iterator interfaz. Se proporciona un método para obtener un iterador de lista que comienza en una posición especificada en la lista.

La List interfaz proporciona dos métodos para buscar un objeto especificado. Desde el punto de vista del rendimiento, estos métodos deben usarse con precaución. En muchas implementaciones, realizarán búsquedas lineales costosas.

La List interfaz proporciona dos métodos para insertar y quitar de forma eficaz varios elementos en un punto arbitrario de la lista.

Nota: Aunque se permite que las listas se contengan como elementos, se recomienda extrema precaución: los equals métodos y hashCode ya no están bien definidos en dicha lista.

Algunas implementaciones de lista tienen restricciones en los elementos que pueden contener. Por ejemplo, algunas implementaciones prohíben elementos NULL y algunas tienen restricciones en los tipos de sus elementos. Si se intenta agregar un elemento no apto, se produce una excepción no desactivada, normalmente NullPointerException o ClassCastException. Si intenta consultar la presencia de un elemento no apto, puede producir una excepción o simplemente devolver false; algunas implementaciones mostrarán el comportamiento anterior y algunas mostrarán esta última. Por lo general, si se intenta realizar una operación en un elemento ineligible cuya finalización no daría lugar a la inserción de un elemento no apto en la lista, puede producir una excepción o puede realizarse correctamente, en la opción de la implementación. Estas excepciones se marcan como "opcionales" en la especificación de esta interfaz.

<h2>"unmodifiable">Listas< no modificables/h2>

Los List#of(Object...) List.of métodos de fábrica y List#copyOf List.copyOf estáticos proporcionan una manera cómoda de crear listas no modificables. Las List instancias creadas por estos métodos tienen las siguientes características:

<ul>li Son i inmodifiable</i>.><>< No se pueden agregar, quitar ni reemplazar elementos. Llamar a cualquier método mutador en la lista siempre UnsupportedOperationException provocará que se produzca. Sin embargo, si los elementos contenidos son mutables por sí mismos, esto puede hacer que el contenido de la lista parezca cambiar. <li>No permiten null elementos. Los intentos de crearlos con null elementos dan como resultado NullPointerException. <li>Son serializables si todos los elementos son serializables. <li>El orden de los elementos de la lista es el mismo que el orden de los argumentos proporcionados o de los elementos de la matriz proporcionada. <li>Las listas y sus #subList(int, int) subList vistas implementan la RandomAccess interfaz. <li>Son basados en valores. Los programadores deben tratar las instancias que son #equals(Object) iguales que intercambiables y no deben usarlas para la sincronización o puede producirse un comportamiento impredecible. Por ejemplo, en una versión futura, es posible que se produzca un error en la sincronización. Los autores de llamadas no deben suponer la identidad de las instancias devueltas. Las fábricas son gratuitas para crear nuevas instancias o reutilizar las existentes. <li>Se serializan como se especifican en la página Formulario serializado . </ul>

Agregado en la versión 1.2.

Java documentación para java.util.List.

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.

Propiedades

Nombre Description
First

Por agregar

Handle

Obtiene el valor JNI del objeto Android subyacente.

(Heredado de IJavaObject)
IsEmpty

Devuelve si no List contiene ningún elemento.

JniIdentityHashCode

Devuelve el valor de java.lang.System.identityHashCode() para la instancia ajustada.

(Heredado de IJavaPeerable)
JniManagedPeerState

Estado del mismo nivel administrado.

(Heredado de IJavaPeerable)
JniObjectReferenceControlBlock

Colección ordenada, donde el usuario tiene control preciso sobre dónde se inserta cada elemento en la lista.

(Heredado de IJavaPeerable)
JniPeerMembers

Compatibilidad con la invocación y el acceso de miembros.

(Heredado de IJavaPeerable)
Last

Por agregar

PeerReference

Devuelve un JniObjectReference de la instancia de objeto Java ajustada.

(Heredado de IJavaPeerable)

Métodos

Nombre Description
Add(Int32, Object)

Inserta el elemento especificado en la posición especificada de esta lista (operación opcional).

Add(Object)

Anexa el elemento especificado al final de esta lista (operación opcional).

AddAll(ICollection)

Anexa todos los elementos de la colección especificada al final de esta lista, en el orden en que devuelven el iterador de la colección especificada (operación opcional).

AddAll(Int32, ICollection)

Inserta todos los elementos de la colección especificada en esta lista en la posición especificada (operación opcional).

AddFirst(Object)

Agrega un elemento como primer elemento de esta colección (operación opcional).

(Heredado de ISequencedCollection)
AddLast(Object)

Agrega un elemento como el último elemento de esta colección (operación opcional).

(Heredado de ISequencedCollection)
Clear()

Quita todos los elementos de esta lista (operación opcional).

Contains(Object)

Devuelve true si esta lista contiene el elemento especificado.

ContainsAll(ICollection)

Devuelve true si esta lista contiene todos los elementos de la colección especificada.

CopyOf(ICollection)

Devuelve una lista no modificable que contiene los elementos de la colección especificada, en su orden de iteración.

Disposed()

Se llama cuando se ha eliminado la instancia.

(Heredado de IJavaPeerable)
DisposeUnlessReferenced()

Si no hay referencias pendientes a esta instancia, llama a Dispose(); de lo contrario, no hace nada.

(Heredado de IJavaPeerable)
Equals(Object)

Compara el objeto especificado con esta lista para obtener igualdad.

Finalized()

Se llama cuando se ha finalizado la instancia.

(Heredado de IJavaPeerable)
ForEach(IConsumer)

Realiza la acción dada para cada elemento de Iterable hasta que se hayan procesado todos los elementos o la acción produce una excepción.

(Heredado de IIterable)
Get(Int32)

Devuelve el elemento en la posición especificada de esta lista.

GetFirst()

Obtiene el primer elemento de esta colección.

(Heredado de ISequencedCollection)
GetHashCode()

Devuelve el valor de código hash de esta lista.

GetLast()

Obtiene el último elemento de esta colección.

(Heredado de ISequencedCollection)
IndexOf(Object)

Devuelve el índice de la primera aparición del elemento especificado en esta lista, o -1 si esta lista no contiene el elemento .

Iterator()

Devuelve un iterador sobre los elementos de esta lista en una secuencia adecuada.

LastIndexOf(Object)

Devuelve el índice de la última aparición del elemento especificado en esta lista o -1 si esta lista no contiene el elemento .

ListIterator()

Devuelve un iterador de lista sobre los elementos de esta lista (en secuencia adecuada).

ListIterator(Int32)

Devuelve un iterador de lista sobre los elementos de esta lista (en secuencia adecuada), empezando por la posición especificada en la lista.

Of()

Devuelve una lista no modificable que contiene cero elementos.

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

Devuelve una lista no modificable que contiene diez elementos.

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

Devuelve una lista no modificable que contiene nueve elementos.

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

Devuelve una lista no modificable que contiene ocho elementos.

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

Devuelve una lista no modificable que contiene siete elementos.

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

Devuelve una lista no modificable que contiene seis elementos.

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

Devuelve una lista no modificable que contiene cinco elementos.

Of(Object, Object, Object, Object)

Devuelve una lista no modificable que contiene cuatro elementos.

Of(Object, Object, Object)

Devuelve una lista no modificable que contiene tres elementos.

Of(Object, Object)

Devuelve una lista no modificable que contiene dos elementos.

Of(Object)

Devuelve una lista no modificable que contiene un elemento.

Of(Object[])

Devuelve una lista no modificable que contiene un número arbitrario de elementos.

Remove(Int32)

Quita el elemento en la posición especificada de esta lista (operación opcional).

Remove(Object)

Quita la primera aparición del elemento especificado de esta lista, si está presente (operación opcional).

RemoveAll(ICollection)

Quita de esta lista todos sus elementos contenidos en la colección especificada (operación opcional).

RemoveFirst()

Quita y devuelve el primer elemento de esta colección (operación opcional).

(Heredado de ISequencedCollection)
RemoveIf(IPredicate)

Quita todos los elementos de esta colección que satisfacen el predicado especificado.

(Heredado de ICollection)
RemoveLast()

Quita y devuelve el último elemento de esta colección (operación opcional).

(Heredado de ISequencedCollection)
ReplaceAll(IUnaryOperator)

Reemplaza cada elemento de esta lista por el resultado de aplicar el operador a ese elemento.

RetainAll(ICollection)

Conserva solo los elementos de esta lista que se encuentran en la colección especificada (operación opcional).

Reversed()

Devuelve una vista ordenada inverso de esta colección.

(Heredado de ISequencedCollection)
Set(Int32, Object)

Reemplaza el elemento en la posición especificada de esta lista por el elemento especificado (operación opcional).

SetJniIdentityHashCode(Int32)

Establezca el valor devuelto por JniIdentityHashCode.

(Heredado de IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Colección ordenada, donde el usuario tiene control preciso sobre dónde se inserta cada elemento en la lista.

(Heredado de IJavaPeerable)
SetPeerReference(JniObjectReference)

Establezca el valor devuelto por PeerReference.

(Heredado de IJavaPeerable)
Size()

Devuelve el número de elementos en esta lista.

Sort(IComparator)

Ordena esta lista según el orden provocado por el especificado Comparator.

Spliterator()

Crea un Spliterator elemento sobre los elementos descritos por este Iterable.

(Heredado de IIterable)
SubList(Int32, Int32)

Devuelve una vista de la parte de esta lista entre el elemento , inclusivo y toIndex, exclusivo especificadofromIndex.

ToArray()

Devuelve una matriz que contiene todos los elementos de esta lista en una secuencia adecuada (del primer al último elemento).

ToArray(IIntFunction)

Devuelve una matriz que contiene todos los elementos de esta colección, utilizando la función proporcionada generator para asignar la matriz devuelta.

(Heredado de ICollection)
ToArray(Object[])

Devuelve una matriz que contiene todos los elementos de esta lista en una secuencia adecuada (del primer al último elemento); el tipo en tiempo de ejecución de la matriz devuelta es el de la matriz especificada.

UnregisterFromRuntime()

Anule el registro de esta instancia para que el entorno de ejecución no lo devuelva de invocaciones futuras Java.Interop.JniRuntime+JniValueManager.PeekValue .

(Heredado de IJavaPeerable)

Implementaciones de interfaz explícitas

Nombre Description
IIterable.Spliterator()

Crea un elemento Spliterator sobre los elementos de esta lista.

ISequencedCollection.AddFirst(Object)

Por agregar

ISequencedCollection.AddLast(Object)

Por agregar

ISequencedCollection.RemoveFirst()

Por agregar

ISequencedCollection.RemoveLast()

Por agregar

ISequencedCollection.Reversed()

Colección ordenada, donde el usuario tiene control preciso sobre dónde se inserta cada elemento en la lista.

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)

Colección ordenada, donde el usuario tiene control preciso sobre dónde se inserta cada elemento en la lista.

ToEnumerable(IIterable)

Colección ordenada, donde el usuario tiene control preciso sobre dónde se inserta cada elemento en la lista.

ToEnumerable<T>(IIterable)

Colección ordenada, donde el usuario tiene control preciso sobre dónde se inserta cada elemento en la lista.

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