English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Diferencia entre lista y colección en Java

Los interfaces List y Set pertenecen a la estructura de Collection. Ambos interfaces extienden el interfaz Collection. Se utilizan para almacenar colecciones de objetos como una única unidad. 

en jdk1.2Antes, hemos utilizado Arrays, Vectors y Hashtable para agrupar objetos en una unidad. 

númeroclavelistaun grupo
1uno
acceso posicional 
La lista proporciona acceso posicional de los elementos en la colección.
El conjunto no proporciona acceso a la posición de los elementos en la colección
2
realización 
Las implementaciones de la lista son ArrayList, LinkedList, Vector, Stack
La implementación del interfaz de conjunto es HashSet y LinkedHashSet
3
repetido 
Podemos almacenar elementos repetidos en la lista.
No podemos almacenar elementos repetidos en el conjunto 
4
pedido 
La lista mantiene el orden de inserción de los elementos en la colección 
El conjunto no mantiene ningún orden 
5
elemento vacío 
La lista puede almacenar múltiples elementos nulos 
Los conjuntos solo pueden almacenar un elemento vacío

Ejemplo de lista

import java.util.List;
import java.util.ArrayList;
import java.util.LinkedList;
public class ListExample {
   public static void main(String[] args) {
      List<String> al = new ArrayList<String>();
      al.add("BMW");
      al.add("Audi");
      al.add("BMW");
      System.out.println("Elementos de Lista: ");
      System.out.print(al);
   }
}

Resultado de salida

Elementos de Lista:
[BMW, Audi, BMW]

Ejemplo de conjunto

import java.util.Set;
import java.util.HashSet;
import java.util.TreeSet;
public class SetExample {
   public static void main(String args[]) {
      int count[] = {2, 4, 3, 5};
      Set<Integer> hset = new HashSet<Integer>();
      try{
         for(int i = 0; i<4; i++{
            hset.add(count[i]);
         }
         System.out.println(hset);
      }
      catch(Exception e){
         e.printStackTrace();
      }
   }
}

Resultado de salida

[2, 4, 3, 5]