Differenza tra TreeSet e TreeMap

Differenza chiave - TreeSet vs TreeMap
 

Un array viene utilizzato per memorizzare un set di elementi di dati dello stesso tipo. La maggior parte dei linguaggi di programmazione supporta gli array. Anche se un array può memorizzare più valori; c'è un grosso svantaggio. Una volta creata la matrice, non è possibile cambiarla. Se il programmatore ha dichiarato un array di 10 elementi, non può memorizzare 15 elementi. Quando il programmatore dichiara un array di 10 elementi e memorizza solo 5 elementi, il resto della memoria allocata è uno spreco. Linguaggi di programmazione come Java hanno collezioni per archiviare gli elementi di dati in modo dinamico. C'è un numero di collezioni. Le raccolte aiutano ad aggiungere, rimuovere elementi e altre operazioni. L'interfaccia di base è nota come raccolta. Set, List e Queue sono alcune interfacce che estendono l'interfaccia Collection. Map è un'interfaccia della gerarchia di raccolta, ma non estende l'interfaccia Collection.  TreeSet è una classe che implementa l'interfaccia Set e memorizza gli elementi in ordine crescente. TreeMap è una classe che implementa l'interfaccia Mappa e memorizza coppie chiave, valore in ordine crescente. Questo è il differenza fondamentale. Questo articolo discute la differenza tra TreeSet e TreeMap.

CONTENUTO

1. Panoramica e differenza chiave
2. Cos'è TreeSet
3. Cos'è TreeMap
4. Somiglianze tra TreeSet e TreeMap
5. Confronto affiancato - TreeSet vs TreeMap in forma tabulare
6. Sommario

Cos'è TreeSet?

TreeSet è una classe che implementa l'interfaccia Set. TreeSet conserva elementi unici. TreeSet implementa l'interfaccia NavigableSet. L'interfaccia Navigable estende le interfacce SortedSet, Set, Collection e Iterable in ordine gerarchico. TreeSet memorizza gli elementi in ordine crescente. Se l'ordine di inserimento è A, C, B, TreeSet li memorizzerà come A, B, C. Esistono metodi di TreeSet. Il metodo add viene utilizzato per aggiungere un elemento al Set. Il metodo remove viene utilizzato per rimuovere un elemento specificato. Il metodo chiaro è usato per rimuovere tutti gli elementi. Il metodo contains restituisce true se l'elemento specificato è presente nel Set. Sono alcuni metodi forniti da TreeSet. Fare riferimento al programma seguente.

Figura 01: programma che utilizza TreeSet

Secondo il programma precedente, Treeset è un oggetto di tipo TreeSet. Può memorizzare stringhe. Gli elementi vengono aggiunti usando il metodo add. L'ordine di inserimento è A, C, D e B. Utilizzando l'iteratore, i valori memorizzati vengono stampati sullo schermo. Gli elementi sono memorizzati nell'ordine A, B, C, D. Pertanto, TreeSet mantiene un ordine crescente degli elementi del Set. Se c'è un altro elemento come "D" non verrà stampato perché l'elemento D esiste già nel Set. Memorizza sempre elementi unici.

Cos'è TreeMap?

TreeMap è una classe che implementa l'interfaccia Mappa. La mappa supporta coppie chiave-valore. Ogni chiave, coppia di valori è una voce. Ogni chiave è unica e ha un valore corrispondente. Il metodo containsKey viene utilizzato per trovare una chiave specifica mentre il metodo containValue viene utilizzato per trovare un valore specifico. Il metodo get viene utilizzato per trovare il valore corrispondente alla chiave data. Il metodo put è usato per memorizzare un valore con la chiave data. È anche possibile rimuovere un elemento in una chiave specifica usando il metodo remove. Questi sono alcuni metodi comuni dell'interfaccia Mappa. Aiuta a cercare, inserire ed eliminare elementi in base alla chiave. La classe TreeMap implementa NavigableMap. NavigableMap estende SortedMap. SortedMap estende la mappa. Pertanto, i metodi di Map possono essere utilizzati con TreeMap. Fare riferimento al programma seguente.

Figura 02: programma che utilizza TreeMap

Secondo il programma di cui sopra, viene creato un oggetto di TreeMap. Il programmatore può aggiungere elementi usando l'oggetto. Il metodo put viene utilizzato per inserire coppie chiave, valore. Il metodo get viene utilizzato con la chiave specifica per recuperare gli elementi. Il programmatore può utilizzare Map.Entry per stampare tutte le chiavi e i valori. Osservando l'uscita, non mantiene l'ordine inserito. Memorizza gli elementi in ordine crescente.

Quali sono le somiglianze tra TreeSet e TreeMap?

  • Sia TreeSet che TreeMap si trovano nella gerarchia di raccolta.
  • Sia TreeSet che TreeMap mantengono l'ordine crescente.
  • Sia TreeSet che TreeMap possono memorizzare e manipolare molti elementi.

Qual è la differenza tra TreeSet e TreeMap?

TreeSet vs TreeMap

TreeSet è una classe che implementa l'interfaccia Set e memorizza gli elementi in ordine crescente. TreeMap è una classe che implementa l'interfaccia Mappa e memorizza coppie chiave, valore in ordine crescente.
 Interfaccia implementata
Implementazioni TreeSet Imposta interfaccia. TreeMap implementa l'interfaccia della mappa.

Riepilogo - TreeSet vs TreeMap

Un array viene utilizzato per memorizzare un insieme di elementi, ma non aiuta a memorizzare gli elementi in modo dinamico. I linguaggi di programmazione come Java contengono collezioni per archiviare gli elementi di dati in modo dinamico. Collection è la classe base nella gerarchia di raccolta. Consiste di classi e interfacce per eseguire operazioni come l'aggiunta, l'eliminazione di elementi. Set e Map sono due interfacce della gerarchia Collection. TreeSet è una classe che implementa l'interfaccia Set e memorizza gli elementi in ordine crescente. TreeMap è una classe che implementa l'interfaccia Mappa e memorizza coppie chiave, valore in ordine crescente. Questa è la differenza tra TreeSet e TreeMap.

Riferimento:

1. "TreeSet in Java - javatpoint". , Punto Java. Disponibile qui
2. "TreeMap in Java - javatpoint.", Punto Java. Disponibile qui