Java - L'interfaccia della raccolta

L'interfaccia Collection è la base su cui è costruito il framework delle collezioni. Dichiara i metodi principali che avranno tutte le raccolte. Questi metodi sono riepilogati nella tabella seguente.

Poiché tutte le raccolte implementano Collection, la familiarità con i suoi metodi è necessaria per una chiara comprensione del framework. Molti di questi metodi possono generare un fileUnsupportedOperationException.

Sr.No. Metodo e descrizione
1

boolean add(Object obj)

Aggiunge obj alla raccolta di richiamo. Restituisce vero se obj è stato aggiunto alla raccolta. Restituisce false se obj è già un membro della raccolta o se la raccolta non consente i duplicati.

2

boolean addAll(Collection c)

Aggiunge tutti gli elementi di c alla raccolta invocante. Restituisce vero se l'operazione ha esito positivo (ovvero, gli elementi sono stati aggiunti). In caso contrario, restituisce false.

3

void clear( )

Rimuove tutti gli elementi dalla raccolta di richiamo.

4

boolean contains(Object obj)

Restituisce true se obj è un elemento della raccolta di richiamo. In caso contrario, restituisce false.

5

boolean containsAll(Collection c)

Restituisce true se la raccolta di richiamo contiene tutti gli elementi di c. In caso contrario, restituisce false.

6

boolean equals(Object obj)

Restituisce true se la raccolta invocante e obj sono uguali. In caso contrario, restituisce false.

7

int hashCode( )

Restituisce il codice hash per la raccolta di richiamo.

8

boolean isEmpty( )

Restituisce vero se la raccolta che richiama è vuota. In caso contrario, restituisce false.

9

Iterator iterator( )

Restituisce un iteratore per la raccolta di richiamo.

10

boolean remove(Object obj)

Rimuove un'istanza di obj dalla raccolta di richiamo. Restituisce vero se l'elemento è stato rimosso. In caso contrario, restituisce false.

11

boolean removeAll(Collection c)

Rimuove tutti gli elementi di c dalla raccolta di richiamo. Restituisce vero se la raccolta è cambiata (cioè, gli elementi sono stati rimossi). In caso contrario, restituisce false.

12

boolean retainAll(Collection c)

Rimuove tutti gli elementi dalla raccolta invocante tranne quelli in c. Restituisce vero se la raccolta è cambiata (cioè, gli elementi sono stati rimossi). In caso contrario, restituisce false.

13

int size( )

Restituisce il numero di elementi contenuti nella raccolta di richiamo.

14

Object[ ] toArray( )

Restituisce una matrice che contiene tutti gli elementi archiviati nella raccolta di richiamo. Gli elementi della matrice sono copie degli elementi della raccolta.

15

Object[ ] toArray(Object array[ ])

Restituisce un array contenente solo quegli elementi della raccolta il cui tipo corrisponde a quello di array.

Esempio

Di seguito è riportato un esempio per spiegare alcuni metodi da varie implementazioni di classi dei metodi di raccolta precedenti:

import java.util.*;
public class CollectionsDemo {

   public static void main(String[] args) {
      // ArrayList 
      List a1 = new ArrayList();
      a1.add("Zara");
      a1.add("Mahnaz");
      a1.add("Ayan");
      System.out.println(" ArrayList Elements");
      System.out.print("\t" + a1);

      // LinkedList
      List l1 = new LinkedList();
      l1.add("Zara");
      l1.add("Mahnaz");
      l1.add("Ayan");
      System.out.println();
      System.out.println(" LinkedList Elements");
      System.out.print("\t" + l1);

      // HashSet
      Set s1 = new HashSet(); 
      s1.add("Zara");
      s1.add("Mahnaz");
      s1.add("Ayan");
      System.out.println();
      System.out.println(" Set Elements");
      System.out.print("\t" + s1);

      // HashMap
      Map m1 = new HashMap(); 
      m1.put("Zara", "8");
      m1.put("Mahnaz", "31");
      m1.put("Ayan", "12");
      m1.put("Daisy", "14");
      System.out.println();
      System.out.println(" Map Elements");
      System.out.print("\t" + m1);
   }
}

Questo produrrà il seguente risultato:

Produzione

ArrayList Elements
	[Zara, Mahnaz, Ayan]
 LinkedList Elements
	[Zara, Mahnaz, Ayan]
 Set Elements
	[Ayan, Zara, Mahnaz]
 Map Elements
	{Daisy = 14, Ayan = 12, Zara = 8, Mahnaz = 31}