IList Interfaz
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í.
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 |
| JniIdentityHashCode |
Devuelve el valor de |
| 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 |
| ContainsAll(ICollection) |
Devuelve |
| 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 |
| 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 |
| 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 |
| 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 |
| Size() |
Devuelve el número de elementos en esta lista. |
| Sort(IComparator) |
Ordena esta lista según el orden provocado por el especificado |
| Spliterator() |
Crea un |
| SubList(Int32, Int32) |
Devuelve una vista de la parte de esta lista entre el elemento , inclusivo y |
| 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 |
| 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 |
| 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 |
| 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) |
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 |