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

Java中列表和集合之间的区别

L'interfaccia List e Set appartengono entrambi al framework Collection. Entrambi espandono l'interfaccia Collection. Entrambi vengono utilizzati per memorizzare una raccolta di oggetti come un singolo elemento. 

Prima di JDK 1.2, abbiamo utilizzato Arrays, Vectors e Hashtable per raggruppare gli oggetti in un singolo elemento. 

NumeroChiaveElencoGruppo
1
Accesso posizionale 
La lista fornisce l'accesso posizionale degli elementi dell'insieme.
L'insieme non fornisce l'accesso alla posizione degli elementi dell'insieme
2
Esecuzione 
Le implementazioni della lista sono ArrayList, LinkedList, Vector, Stack
L'implementazione dell'interfaccia Set è HashSet e LinkedHashSet
3
Duplicato 
Possiamo memorizzare gli elementi duplicati nella lista.
Non possiamo memorizzare elementi duplicati nel set 
4
Ordine 
La lista mantiene l'ordine di inserimento degli elementi nell'insieme 
L'insieme non mantiene alcun ordine 
5
Elemento vuoto 
The list can store multiple null elements 
L'insieme può memorizzare un elemento vuoto

Esempio di elenco

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("Elementi della lista: ");
      System.out.print(al);
   }
}

Risultato di output

Elementi della lista:
[BMW, Audi, BMW]

Esempio di insieme

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();
      }
   }
}

Risultato di output

[2, 4, 3, 5]