Interfaz de lista Java

En este tutorial, aprenderemos sobre la interfaz List en Java y sus métodos.

En Java, la Listinterfaz es una colección ordenada que nos permite almacenar y acceder a elementos de forma secuencial. Extiende la Collectioninterfaz.

Clases que implementan la lista

Dado que Listes una interfaz, no podemos crear objetos a partir de ella.

Para utilizar las funcionalidades de la Listinterfaz, podemos utilizar estas clases:

  • Lista de arreglo
  • Lista enlazada
  • Vector
  • Apilar

Estas clases se definen en el marco de Colecciones e implementan la Listinterfaz.

¿Cómo usar List?

En Java, debemos importar el java.util.Listpaquete para poder usar List.

 // ArrayList implementation of List List list1 = new ArrayList(); // LinkedList implementation of List List list2 = new LinkedList(); 

Aquí, hemos creado los objetos list1 y list2 de clases ArrayListy LinkedList. Estos objetos pueden utilizar las funcionalidades de la Listinterfaz.

Métodos de lista

La Listinterfaz incluye todos los métodos de la Collectioninterfaz. Es porque Collectiones una super interfaz de List.

Algunos de los métodos más utilizados de la Collectioninterfaz que también están disponibles en la Listinterfaz son:

  • add() - agrega un elemento a una lista
  • addAll() - agrega todos los elementos de una lista a otra
  • get() - ayuda a acceder aleatoriamente a elementos de listas
  • iterator() - devuelve un objeto iterador que se puede usar para acceder secuencialmente a elementos de listas
  • set() - cambia elementos de listas
  • remove() - elimina un elemento de la lista
  • removeAll() - elimina todos los elementos de la lista
  • clear()- elimina todos los elementos de la lista (más eficiente que removeAll())
  • size() - devuelve la longitud de las listas
  • toArray() - convierte una lista en una matriz
  • contains()- devuelve truesi una lista contiene un elemento especificado

Implementación de la interfaz de lista

1. Implementación de la clase ArrayList

 import java.util.List; import java.util.ArrayList; class Main ( public static void main(String() args) ( // Creating list using the ArrayList class List numbers = new ArrayList(); // Add elements to the list numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("List: " + numbers); // Access element from the list int number = numbers.get(2); System.out.println("Accessed Element: " + number); // Remove element from the list int removedNumber = numbers.remove(1); System.out.println("Removed Element: " + removedNumber); ) ) 

Salida

 Lista: (1, 2, 3) Elemento accedido: 3 Elemento eliminado: 2 

Para obtener más información ArrayList, visite Java ArrayList.

2. Implementación de la clase LinkedList

 import java.util.List; import java.util.LinkedList; class Main ( public static void main(String() args) ( // Creating list using the LinkedList class List numbers = new LinkedList(); // Add elements to the list numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("List: " + numbers); // Access element from the list int number = numbers.get(2); System.out.println("Accessed Element: " + number); // Using the indexOf() method int index = numbers.indexOf(2); System.out.println("Position of 3 is " + index); // Remove element from the list int removedNumber = numbers.remove(1); System.out.println("Removed Element: " + removedNumber); ) ) 

Salida

 Lista: (1, 2, 3) Elemento accedido: 3 La posición de 3 es 1 Elemento eliminado: 2 

Para obtener más información LinkedList, visite Java LinkedList.

Lista de Java frente a conjunto

Tanto la Listinterfaz como la Setinterfaz heredan la Collectioninterfaz. Sin embargo, existe alguna diferencia entre ellos.

  • Las listas pueden incluir elementos duplicados. Sin embargo, los conjuntos no pueden tener elementos duplicados.
  • Los elementos de las listas se almacenan en algún orden. Sin embargo, los elementos en conjuntos se almacenan en grupos como conjuntos en matemáticas.

Ahora que sabemos qué Listes, veremos en detalle sus implementaciones ArrayListy LinkedListclases en los próximos tutoriales.

Articulos interesantes...