IDeque 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 lineal que admite la inserción y eliminación de elementos en ambos extremos.
[Android.Runtime.Register("java/util/Deque", "", "Java.Util.IDequeInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public interface IDeque : IDisposable, Java.Interop.IJavaPeerable, Java.Util.IQueue, Java.Util.ISequencedCollection
[<Android.Runtime.Register("java/util/Deque", "", "Java.Util.IDequeInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type IDeque = interface
interface IQueue
interface ICollection
interface IIterable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface ISequencedCollection
- Derivado
- Atributos
- Implementaciones
Comentarios
Colección lineal que admite la inserción y eliminación de elementos en ambos extremos. El nombre deque es corto para "cola de doble fin" y normalmente se pronuncia "deck". La mayoría Deque de las implementaciones no tienen límites fijos en el número de elementos que pueden contener, pero esta interfaz admite deques restringidos por capacidad, así como aquellas sin límite de tamaño fijo.
Esta interfaz define métodos para acceder a los elementos en ambos extremos del deque. Se proporcionan métodos para insertar, quitar y examinar el elemento. Cada uno de estos métodos existe en dos formas: una produce una excepción si se produce un error en la operación, la otra devuelve un valor especial (ya sea null o false, dependiendo de la operación). La última forma de la operación de inserción está diseñada específicamente para su uso con implementaciones restringidas a Deque la capacidad; en la mayoría de las implementaciones, las operaciones de inserción no pueden producir errores.
Los doce métodos descritos anteriormente se resumen en la tabla siguiente:
<table class="striped">caption Summary of Deque methods</caption><thead><tr><td rowspan="2">/td<><th scope="colspan="2"> First Element (Head)</th th><scope="col" colspan="2"> Last Element (Tail)</th></tr tr><><th scope="col" style="font-weight:normal; font-style:italic">Throws exception</th th><scope="col" style="font-weight:>< normal; font-style:italic">Special value</th><scope="col" style="font-weight:normal; font-style:italic">Throws exception</th scope="col" style="font-weight:normal; font-style:italic">Special value</th></tr></thead><tbody><tr><th scope="row">Insert</><th><td>#addFirst(Object) addFirst(e)</td><>#offerFirst(Object) offerFirst(e)< td><>#addLast(Object) addLast(e)</td><td>#offerLast(Object) offerLast(e)</td></tr><tr><th scope="row">Remove</th><td>#removeFirst() removeFirst()</td td><>#pollFirst() pollFirst()</td td><>#removeLast() removeLast()</td><td/td>#pollLast() pollLast()<></tr tr><><th scope="row">Examine</th><td>#getFirst() getFirst()</td><td>#peekFirst() peekFirst()</td td></td td>#getLast() getLast()<><td>#peekLast() peekLast()</td></tr></tbody></table>
Esta interfaz extiende la Queue interfaz. Cuando se usa un deque como una cola, el comportamiento de FIFO (primero enFirst-Out). Los elementos se agregan al final del deque y se quitan del principio. Los métodos heredados de la Queue interfaz son exactamente equivalentes a los Deque métodos, como se indica en la tabla siguiente:
<table class="striped">caption Comparison of Queue and Deque methods</caption><thead><tr><th scope="col">< Method/th>Queuescope="col"< Equivalent > Method<>/thDeque</tr></thead><tbody><tr><th scope="row"><>/th#add(Object) add(e)<td/td><>#addLast(Object) addLast(e)</tr><><th scope="row"><>/th#offer(Object) offer(e)<><td>#offerLast(Object) offerLast(e)</td></tr><tr><th scope="row">#remove() remove()</th><td>#removeFirst() removeFirst()</td></tr tr><><th scope="row">#poll() poll()</th><td/td>#pollFirst() pollFirst()<></tr tr><><th scope="row">#element() element()</th><td>#getFirst() getFirst()</td></tr tr><><th scope="row">#peek() peek()</th><td>#peekFirst() peekFirst()</td></tr></tbody></table>
Los deques también se pueden usar como pilas LIFO (Last-In-First-Out). Esta interfaz debe usarse en preferencia para la clase heredada Stack . Cuando se usa un deque como pila, los elementos se insertan y se extrae desde el principio del deque. Los métodos de pila son equivalentes a los Deque métodos, como se indica en la tabla siguiente:
<table class="striped">caption Comparison of Stack and Deque methods</caption><thead><tr><th scope="col"> Stack Method/th<>scope="col"< Equivalent > Method<>/thDeque</tr></thead><tbody><tr><th scope="row"><>/th#push(Object) push(e)<td/td><>#addFirst(Object) addFirst(e)</tr><><th scope="row"><>/th#pop() pop()<><td>#removeFirst() removeFirst()</td></tr tr><><th scope="row">#peek() peek()</th><td/td>#getFirst() getFirst()<></tr></tbody></table>
Tenga en cuenta que el #peek peek método funciona igualmente bien cuando se usa un deque como una cola o una pila; en cualquier caso, los elementos se dibujan desde el principio del deque.
Esta interfaz proporciona dos métodos para quitar elementos interiores y #removeFirstOccurrence removeFirstOccurrence#removeLastOccurrence removeLastOccurrence.
A diferencia de la List interfaz , esta interfaz no proporciona compatibilidad con el acceso indexado a los elementos.
Aunque Deque las implementaciones no son estrictamente necesarias para prohibir la inserción de elementos NULL, se recomienda encarecidamente hacerlo. Se recomienda encarecidamente a los usuarios de cualquier Deque implementación que permita que los elementos NULL no aprovechen la capacidad de insertar valores NULL. Esto es así porque null se usa como un valor devuelto especial por varios métodos para indicar que el deque está vacío.
Deque Por lo general, las implementaciones no definen versiones basadas en elementos de los equals métodos y hashCode , sino que heredan las versiones basadas en identidad de la clase Object.
Agregado en la versión 1.6.
Java documentación para java.util.Deque.
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 |
Recupera, pero no quita, el primer elemento de este deque. |
| Handle |
Obtiene el valor JNI del objeto Android subyacente. (Heredado de IJavaObject) |
| IsEmpty |
Devuelve |
| JniIdentityHashCode |
Devuelve el valor de |
| JniManagedPeerState |
Estado del mismo nivel administrado. (Heredado de IJavaPeerable) |
| JniObjectReferenceControlBlock |
Colección lineal que admite la inserción y eliminación de elementos en ambos extremos. (Heredado de IJavaPeerable) |
| JniPeerMembers |
Compatibilidad con la invocación y el acceso de miembros. (Heredado de IJavaPeerable) |
| Last |
Recupera, pero no quita, el último elemento de este deque. |
| PeerReference |
Devuelve un JniObjectReference de la instancia de objeto Java ajustada. (Heredado de IJavaPeerable) |
Métodos
| Nombre | Description |
|---|---|
| Add(Object) |
Inserta el elemento especificado en la cola representada por este deque (es decir, en la cola de este deque) si es posible hacerlo inmediatamente sin infringir las restricciones de capacidad, devolviendo |
| AddAll(ICollection) |
Agrega todos los elementos de la colección especificada a esta colección (operación opcional). (Heredado de ICollection) |
| AddFirst(Object) |
Inserta el elemento especificado en la parte frontal de este deque si es posible hacerlo inmediatamente sin infringir las restricciones de capacidad, iniciando un |
| AddLast(Object) |
Inserta el elemento especificado al final de este deque si es posible hacerlo inmediatamente sin infringir las restricciones de capacidad, iniciando un |
| Clear() |
Quita todos los elementos de esta colección (operación opcional). (Heredado de ICollection) |
| Contains(Object) |
Devuelve |
| ContainsAll(ICollection) |
Devuelve |
| DescendingIterator() |
Devuelve un iterador sobre los elementos de este deque en orden secuencial inverso. |
| Disposed() |
Se llama cuando se ha eliminado la instancia. (Heredado de IJavaPeerable) |
| DisposeUnlessReferenced() |
Si no hay referencias pendientes a esta instancia, llama a |
| Element() |
Recupera, pero no quita, el encabezado de la cola representada por este deque (es decir, el primer elemento de este deque). |
| Equals(Object) |
Compara el objeto especificado con esta colección para obtener igualdad. (Heredado de ICollection) |
| Finalized() |
Se llama cuando se ha finalizado la instancia. (Heredado de IJavaPeerable) |
| ForEach(IConsumer) |
Realiza la acción dada para cada elemento de |
| GetFirst() |
Obtiene el primer elemento de esta colección. (Heredado de ISequencedCollection) |
| GetHashCode() |
Devuelve el valor de código hash de esta colección. (Heredado de ICollection) |
| GetLast() |
Obtiene el último elemento de esta colección. (Heredado de ISequencedCollection) |
| Iterator() |
Devuelve un iterador sobre los elementos de este deque en la secuencia adecuada. |
| Offer(Object) |
Inserta el elemento especificado en la cola representada por este deque (es decir, en la cola de este deque) si es posible hacerlo inmediatamente sin infringir las restricciones de capacidad, volviendo |
| OfferFirst(Object) |
Inserta el elemento especificado en la parte frontal de este deque, a menos que infrinja las restricciones de capacidad. |
| OfferLast(Object) |
Inserta el elemento especificado al final de este deque, a menos que infrinja las restricciones de capacidad. |
| Peek() |
Recupera, pero no quita, el encabezado de la cola representada por este deque (es decir, el primer elemento de este deque) o devuelve |
| PeekFirst() |
Recupera, pero no quita, el primer elemento de este deque o devuelve |
| PeekLast() |
Recupera, pero no quita, el último elemento de este deque o devuelve |
| Poll() |
Recupera y quita el encabezado de la cola representada por este deque (es decir, el primer elemento de este deque) o devuelve |
| PollFirst() |
Recupera y quita el primer elemento de este deque o devuelve |
| PollLast() |
Recupera y quita el último elemento de este deque o devuelve |
| Pop() |
Extrae un elemento de la pila representada por este deque. |
| Push(Object) |
Inserta un elemento en la pila representada por este deque (es decir, en la cabeza de este deque) si es posible hacerlo inmediatamente sin infringir las restricciones de capacidad, iniciando un |
| Remove() |
Recupera y quita el encabezado de la cola representada por este deque (es decir, el primer elemento de este deque). |
| Remove(Object) |
Quita la primera aparición del elemento especificado de este deque. |
| RemoveAll(ICollection) |
Quita todos los elementos de esta colección que también están incluidos en la colección especificada (operación opcional). (Heredado de ICollection) |
| RemoveFirst() |
Recupera y quita el primer elemento de este deque. |
| RemoveFirstOccurrence(Object) |
Quita la primera aparición del elemento especificado de este deque. |
| RemoveIf(IPredicate) |
Quita todos los elementos de esta colección que satisfacen el predicado especificado (operación opcional). (Heredado de ICollection) |
| RemoveLast() |
Recupera y quita el último elemento de este deque. |
| RemoveLastOccurrence(Object) |
Quita la última aparición del elemento especificado de este deque. |
| RetainAll(ICollection) |
Conserva solo los elementos de esta colección que se encuentran en la colección especificada (operación opcional). (Heredado de ICollection) |
| Reversed() |
Devuelve una vista ordenada inverso de esta colección. (Heredado de ISequencedCollection) |
| SetJniIdentityHashCode(Int32) |
Establezca el valor devuelto por |
| SetJniManagedPeerState(JniManagedPeerStates) |
Colección lineal que admite la inserción y eliminación de elementos en ambos extremos. (Heredado de IJavaPeerable) |
| SetPeerReference(JniObjectReference) |
Establezca el valor devuelto por |
| Size() |
Devuelve el número de elementos de este deque. |
| Spliterator() |
Crea un |
| ToArray() |
Devuelve una matriz que contiene todos los elementos de esta colección. (Heredado de ICollection) |
| 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 colección; el tipo en tiempo de ejecución de la matriz devuelta es el de la matriz especificada. (Heredado de ICollection) |
| 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.Reversed() |
Por agregar |
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 lineal que admite la inserción y eliminación de elementos en ambos extremos. |
| ToEnumerable(IIterable) |
Devuelve un IEnumerable objeto que recorre en iteración una Java IIterable, lo que permite |
| ToEnumerable<T>(IIterable) |
Devuelve un IEnumerable<T> objeto que recorre en iteración un Java IIterable, serializar cada elemento en |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |