AbstractList en Java con ejemplos

La clase AbstractList en Java es parte de Java Collection Framework e implementa la interfaz Collection y la clase AbstractCollection . Esta clase proporciona una implementación básica de la interfaz List para minimizar el esfuerzo necesario para implementar esta interfaz respaldada por un almacén de datos de acceso aleatorio (como una array). Para datos de acceso secuencial (como una lista enlazada), se debe usar AbstractSequentialList en lugar de esta clase.

Para implementar una lista no modificable, para lo cual solo se necesita extender esta clase AbstractList e implementar los métodos get(int) y size() . Para implementar una lista modificable, para la cual se anula adicionalmente el método set​(índice int, elemento E) (que, de lo contrario, genera una excepción UnsupportedOperationException). Si la lista es de tamaño variable, para lo cual se deben anular los métodos add(int, E ) y remove(int) .

Jerarquía de clases: 

AbstractList-in-Java

Declaración: 

public abstract class AbstractList<E> extends AbstractCollection<E> implements List<E>

where E is the type of elements maintained by this collection.

Constructor: AbstractList() protegido: el constructor predeterminado, pero al estar protegido, no permite crear un objeto AbstractList.

AbstractList<E> al = new ArrayList<E>();

Ejemplo 1: AbstractList es una clase abstracta , por lo que se le debe asignar una instancia de sus subclases, como ArrayList , LinkedList o Vector

Java

// Java code to illustrate AbstractList
import java.util.*;
 
public class AbstractListDemo {
    public static void main(String args[])
    {
 
        // Creating an empty AbstractList
        AbstractList<String> list = new ArrayList<String>();
 
        // Use add() method to add elements in the list
        list.add("Geeks");
        list.add("for");
        list.add("Geeks");
        list.add("10");
        list.add("20");
 
        // Displaying the AbstractList
        System.out.println("AbstractList:" + list);
    }
}

 
 Producción:

AbstractList:[Geeks, for, Geeks, 10, 20]

Ejemplo 2:

Java

// Java code to illustrate
// methods of AbstractCollection
 
import java.util.*;
 
public class AbstractListDemo {
    public static void main(String args[])
    {
 
        // Creating an empty AbstractList
        AbstractList<String>
            list = new LinkedList<String>();
 
        // Using add() method to add elements in the list
        list.add("Geeks");
        list.add("for");
        list.add("Geeks");
        list.add("10");
        list.add("20");
 
        // Output the list
        System.out.println("AbstractList: " + list);
 
        // Remove the head using remove()
        list.remove(3);
 
        // Print the final list
        System.out.println("Final AbstractList: " + list);
 
        // getting the index of last occurrence
        // using lastIndexOf() method
        int lastindex = list.lastIndexOf("A");
 
        // printing the Index
        System.out.println("Last index of A : "
                        + lastindex);
    }
}

Producción:

AbstractList: [Geeks, for, Geeks, 10, 20]
Final AbstractList: [Geeks, for, Geeks, 20]
Last index of A : -1

Métodos en AbstractList

MÉTODO

DESCRIPCIÓN

agregar (índice int, elemento E) Inserta el elemento especificado en la posición especificada en esta lista (operación opcional).
agregar​(E e) Agrega el elemento especificado al final de esta lista (operación opcional).

addAll​(índice int, 

Colección<? se extiende E > c)

Inserta todos los elementos de la colección especificada en esta lista en la posición especificada (operación opcional).
clear() Elimina todos los elementos de esta lista (operación opcional).
 es igual a​(Objeto o) Compara el objeto especificado con esta lista para la igualdad.
obtener (índice int) Devuelve el elemento en la posición especificada en esta lista.
código hash() Devuelve el valor del código hash para esta lista.
indexOf​(Objeto o) Devuelve el índice de la primera aparición del elemento especificado en esta lista, o -1 si esta lista no contiene el elemento.
 iterador() Devuelve un iterador sobre los elementos de esta lista en la secuencia adecuada.
lastIndexOf​(Objeto o) Devuelve el índice de la última aparición del elemento especificado en esta lista, o -1 si esta lista no contiene el elemento.
listaIterador() Devuelve un iterador de lista sobre los elementos de esta lista (en la secuencia adecuada).
listIterator​(índice int) Devuelve un iterador de lista sobre los elementos de esta lista (en la secuencia adecuada), comenzando en la posición especificada en la lista.
eliminar (índice int) Elimina el elemento en la posición especificada en esta lista (operación opcional).
 removeRange​(int fromIndex, int toIndex) Elimina de esta lista todos los elementos cuyo índice se encuentra entre fromIndex, inclusive, y toIndex, exclusivo.
 conjunto (índice int, elemento E) Reemplaza el elemento en la posición especificada en esta lista con el elemento especificado (operación opcional).
 subLista​(int fromIndex, int toIndex) Devuelve una vista de la parte de esta lista entre fromIndex, inclusive, y toIndex, exclusivo.

Métodos declarados en la clase java.util.AbstractCollection

MÉTODO

DESCRIPCIÓN

addAll​(Colección<? extiende E> c) Agrega todos los elementos de la colección especificada a esta colección (operación opcional).
contiene​(Objeto o) Devuelve verdadero si esta colección contiene el elemento especificado.
 contieneTodo​(Colección<?> c) Devuelve verdadero si esta colección contiene todos los elementos de la colección especificada.
 esta vacio() Devuelve verdadero si esta colección no contiene elementos.
 eliminar​(Objeto o) Elimina una sola instancia del elemento especificado de esta colección, si está presente (operación opcional).
removeAll​(Colección<?> c) Elimina todos los elementos de esta colección que también están contenidos en la colección especificada (operación opcional).
 retenerTodo​(Colección<?> c) Retiene solo los elementos de esta colección que están contenidos en la colección especificada (operación opcional).
 aArray() Devuelve una array que contiene todos los elementos de esta colección.
a la Array​(T[] a) Devuelve una array que contiene todos los elementos de esta colección; el tipo de tiempo de ejecución de la array devuelta es el de la array especificada.
 Enstringr() Devuelve una representación de string de esta colección.

Métodos declarados en la interfaz java.util.Collection

MÉTODO

DESCRIPCIÓN

flujoParalelo() Devuelve un Stream posiblemente paralelo con esta colección como fuente.
removeIf​(predicado<? filtro super E>) Elimina todos los elementos de esta colección que satisfacen el predicado dado.
corriente() Devuelve un Stream secuencial con esta colección como fuente.
toArray​(IntFunction<T[]> generador)

Devuelve una array que contiene todos los elementos de esta colección, utilizando el

 función de generador proporcionada para asignar la array devuelta.

Métodos declarados en la interfaz java.util.List                        

MÉTODO

DESCRIPCIÓN

 addAll​(Colección<? extiende E> c)

Agrega todos los elementos de la colección especificada al final de esta lista, en el orden en que

 son devueltos por el iterador de la colección especificada (operación opcional).

 contiene​(Objeto o) Devuelve verdadero si esta lista contiene el elemento especificado.
 contieneTodo​(Colección<?> c) Devuelve verdadero si esta lista contiene todos los elementos de la colección especificada.
esta vacio() Devuelve verdadero si esta lista no contiene elementos.
eliminar (índice int) Elimina el elemento en la posición especificada en esta lista (operación opcional).
removeAll​(Colección<?> c) Elimina de esta lista todos sus elementos que están contenidos en la colección especificada (operación opcional).
 replaceAll (operador UnaryOperator<E>) Reemplaza cada elemento de esta lista con el resultado de aplicar el operador a ese elemento.
retenerTodo​(Colección<?> c) Conserva solo los elementos de esta lista que están contenidos en la colección especificada (operación opcional).
 Talla() Devuelve el número de elementos de esta lista.
 ordenar​(Comparador<? super E> c) Ordena esta lista de acuerdo con el orden inducido por el Comparador especificado.
divisor() Crea un Spliterator sobre los elementos de esta lista.
 aArray() Devuelve una array que contiene todos los elementos de esta lista en la secuencia adecuada (desde el primero hasta el último elemento).
 a la Array​(T[] a)

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

; el tipo de tiempo de ejecución de la array devuelta es el de la array especificada.

Referencia: https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/AbstractList.html

Publicación traducida automáticamente

Artículo escrito por RishabhPrabhu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *