Cos’è una raccolta java?

Voglio sapere: cos’è una collezione in Java?

Solitamente un’istanza di java.util.Collection (sebbene java.util.Map sia anche ufficialmente parte del framework delle collezioni)

Sebbene l’interfaccia Collection possa essere implementata direttamente, solitamente il codice client utilizzerà un’implementazione di una delle interfacce secondarie: Set , List , Queue / Deque

Ecco alcuni esempi di codice (sul lato sinistro di solito vedrai un’interfaccia e sul lato destro una class di implementazione).

Gli insiemi non memorizzano i duplicati, tutti i loro elementi sono unici:

final Set basicSet = new HashSet(); basicSet.add("One"); basicSet.add("Two"); basicSet.add("One"); basicSet.add("Three"); System.out.println(basicSet.toString()); // Output: [Three, One, Two] // (seemingly random order, no duplicates) 

I SortedSet sono un caso speciale di set che memorizzano gli elementi in un ordine specificato:

 final SortedSet sortedSet = new TreeSet(); sortedSet.add("One"); sortedSet.add("Two"); sortedSet.add("One"); sortedSet.add("Three"); System.out.println(sortedSet.toString()); // Output: [One, Three, Two] // (natural order, no duplicates) 

Le liste ti consentono di memorizzare un valore più volte e accedere o modificare l’ordine di inserimento:

 final List strings = new ArrayList(); strings.add("Two"); strings.add("Three"); strings.add(0, "One"); // add item to beginning strings.add(3, "One"); // add item at position 3 (zero-based) strings.add("Three"); strings.add(strings.size() - 1, "Two"); // add item at last-but-one position System.out.println(strings); // Output: [One, Two, Three, One, Two, Three] 

C’è anche una scorciatoia pratica per definire una lista:

 List strings = Arrays.asList("One", "Two", "Three"); // this returns a different kind of list but you usually don't need to know that 

eccetera.

Per una migliore comprensione, leggi The Collections Trail dal Sun Java Tutorial (online) o Java Generics and Collections di Maurice Naftalin e Philip Wadler

Penso che questa domanda sia la risposta migliore in un senso non di programmazione.

Supponiamo di avere 5 palle e di spostarle facilmente. Prendi una borsa e metti dentro le 5 palle. La borsa funge da contenitore. Ora puoi spostare questa borsa e così facilmente le 5 sfere si muovono con essa.

In poche parole, tenendo in mano zero o più oggetti, all’interno di un altro object per un facile recupero.

Collection è un’interfaccia nell’API Java e, secondo i documenti , è …

L’interfaccia di root nella gerarchia di raccolta. Una collezione rappresenta un gruppo di oggetti, noti come i suoi elementi. Alcune raccolte consentono elementi duplicati e altre no. Alcuni sono ordinati e altri non ordinati. Il JDK non fornisce alcuna implementazione diretta di questa interfaccia: fornisce implementazioni di sottointerfacce più specifiche come Set e List. Questa interfaccia viene in genere utilizzata per trasmettere raccolte e manipolarle laddove è richiesta la massima generalità.

Esempi comuni di collezioni sono: ArrayList , HashSet , LinkedList , Stack e Vector .

È una class che implementa l’interfaccia java.util.Collection.

C’è un altro ramo per quelli che implementano java.util.Map.

Queste sono le basi per le strutture dati in Java: Elenco, Set, LinkedList, HashMap, TreeMap, ecc.

Citando API Java “Una collezione – a volte chiamata contenitore – è semplicemente un object che raggruppa più elementi in una singola unità.”