Lavorare con strutture dati in Java

Sommario
Ad un certo punto del nostro sviluppo come creatori di software ci imbatteremo in situazioni in cui dobbiamo fare cose molto più complesse all'interno dei nostri programmi, generalmente questo si traduce in una gestione dei dati più complessa e in una diversa organizzazione degli stessi.
Struttura datiPer questo abbiamo il Strutture dati, che ci consentono di organizzare le nostre informazioni all'interno del programma per potervi accedere in modo ordinato e schematico. Nel Giava Possiamo gestire diversi tipi di strutture grazie alle sue classi e librerie standard, quindi se apprendiamo quali abbiamo a disposizione, è possibile che possiamo trarre il vantaggio necessario e quindi raggiungere i nostri obiettivi.
UN Vettore è un tipo di struttura che ha una conformazione lineare e può memorizzare una quantità di dati dello stesso tipo. I dati che puoi memorizzare sono tipi primitivi come int, bool, ecc. Ma puoi anche memorizzare tipi di oggetti, anche se in questo caso viene memorizzato il riferimento all'oggetto e non l'oggetto in quanto tale, tuttavia è qualcosa di molto utile da sapere.
AccessoEssendo lineare, l'accesso al suo contenuto deve essere eseguito in sequenza, sebbene possiamo puntare direttamente a un indice e ottenere il suo contenuto, il percorso nella maggior parte dei casi che possiamo fare su questa struttura risponde a una sequenza dei tuoi indici.
Quando abbiamo un indice per elemento è un array o vettore unidimensionaleQuando invece abbiamo più di un indice per elemento parliamo di array multidimensionale, cioè all'interno di un indice abbiamo una struttura interna con i suoi indici.
Dichiarare un array è molto semplice, dobbiamo solo definire il tipo di dati che andrà a memorizzare e indicare le dimensioni tra parentesi, quindi dobbiamo definire il suo nome e con questo possiamo iniziare a usarlo.
Sebbene ci siano diversi modi per dichiarare un array, quello preferito è la forma breve come vediamo di seguito:
type [] nameArrary = nuovo tipo [lunghezza];

Nel caso di un array multidimensionale possiamo fare lo stesso ma aggiungendo i nuovi livelli o dimensioni all'interno della stessa dichiarazione, ad esempio:
Matrice bidimensionale:
type [] [] nameArray = new type [lunghezza] [lunghezza];

Matrice tridimensionale:
tipo [] [] [] nameArrary = nuovo tipo [lunghezza] [lunghezza] [lunghezza];

L'unica cosa che dobbiamo tenere a mente è che dopo tre dimensioni le cose diventano molto più complesse, ma questo sarà dettato dalle nostre esigenze al momento dello sviluppo del programma.
Per passare attraverso un array dobbiamo usare uno dei cicli iterativi che abbiamo a disposizione, essendo il ciclo per uno dei preferiti, poiché possiamo indicare la dimensione dell'array e passare attraverso ciascuno dei suoi elementi.
Dobbiamo tenere presente che gli indici degli array partono da zero, quindi in un array di tre elementi i loro indici sarebbero [0], [1], [2], Questo deve essere preso in considerazione poiché non è un account tradizionale, può creare confusione.
Un esempio generico di come eseguire il ciclo attraverso un array è qualcosa di simile al seguente:
 per (int i = 0; i

Allo stesso modo in cui in quel piccolo esempio abbiamo fatto la serigrafia del contenuto dell'indice corrispondente, possiamo anche fare assegnazioni sequenziali e altre operazioni con l'array. Nel caso di un array multidimensionale, dobbiamo fare un ciclo per ciascuna delle dimensioni che abbiamo, ecco perché diciamo che dopo più di tre dimensioni un array diventa molto complesso.
Costruiremo un piccolo codice in cui definiremo un array, quindi faremo un giro dei suoi elementi e li mostreremo sullo schermo. Quindi vediamo come appare il nostro codice:
 public class ExampleArray1 {public static void main (String [] argv) {int [] ourArray = new int [12]; for (int i = 0; i <12; i ++) {ourArray [i] = i + 1; System.out.println ("Il contenuto dell'array in: [" + i + "] è:" + ourArray [i]); } System.out.println ("La lunghezza totale dell'array è:" + ourArray.length); }} 

In questo programma, la prima cosa che facciamo dopo aver definito la nostra classe e il metodo principale è definire un array di tipo chiamato int il nostro array a cui assegniamo una lunghezza di 12 elementi, quindi con un ciclo for che va da 0 a 11 andremo ad assegnare un valore a ciascuno degli indici dell'array, quindi lo facciamo subito ne stampiamo il valore e infine usiamo la proprietà lunghezza dell'array che ci permette di ottenere la sua lunghezza totale e lo stampiamo ugualmente.
Se lo vediamo nella nostra console durante l'esecuzione del programma, otterremo quanto segue:

INGRANDIRE

Come possiamo vedere, otteniamo una riga per ogni elemento dell'array e una riga finale che indica la sua dimensione reale, notiamo anche che se contiamo da 0 a 11 abbiamo 12 elementi, quindi ciò che spieghiamo sul conteggio dell'indice è dimostrato della matrice.
L'uso degli array è molto diffuso e molto utile, tuttavia ci sono momenti in cui iniziano a vedersi i suoi limiti, soprattutto quando lavoriamo con strutture molto dinamiche dove non sappiamo quanti elementi avremo alla fine e dove abbiamo bisogno di un poche funzionalità in più a parte le iterazioni per scorrere i suoi elementi.
Quando ci rendiamo conto della necessità di essere più complessi nella gestione dei dati, possiamo andare al collezioni, che non sono altro che un numero di classi raggruppate nella libreria standard di Giava java.util e che ci consentono di creare altri tipi di strutture dati.
In questo caso esploreremo un po' la classe Lista di array, che ci consente di creare elenchi di array come indica il nome, ma per manipolare i suoi elementi dobbiamo farlo attraverso i suoi diversi metodi.
Vediamo di seguito un piccolo elenco dei metodi disponibili della classe Lista di array più importante e che potremmo aver bisogno di creare i nostri programmi, se abbiamo bisogno di qualcosa in più possiamo sempre ricorrere alla documentazione ufficiale della lingua.
Inserisci ()Questo metodo ci permette di aggiungere un elemento alla lista o alla fine o in una certa posizione, questa è definita passando dei parametri.
chiaro ()Pulisce la struttura eliminando o svuotando tutti gli elementi che contiene.
ottenere ()Restituisce il valore dell'indice indicato della lista in questione.
rimuovere ()Questo metodo ci permette di rimuovere un particolare elemento dalla struttura dati.
toArray ()Questo metodo ci consente di effettuare una conversione di array del contenuto dell'elenco o della struttura dati.
Per dichiarare una lista con Lista di array, dobbiamo semplicemente creare un'istanza di questa classe, con questo possiamo iniziare a lavorare sull'assegnazione di elementi e contenuti, per questo possiamo vedere la seguente sintassi:
ArrayList ourList = new ArrayList ();

Sebbene possiamo anche usare una dichiarazione e un'assegnazione simultanea di elementi come vediamo nella seguente riga di codice:
List ourList = Arrays.asList ("Pedro", "Juan", "Manuel");

Il tour della nostra lista può essere realizzato con un ciclo iterativo con per () che abbiamo già visto negli array, la differenza è che poiché non sappiamo con certezza il numero di elementi nelle nostre liste, dobbiamo definire il limite utilizzando il metodo taglia () dello stesso e per ottenere il contenuto in un determinato indice utilizziamo il metodo ottenere (). Un esempio della sintassi per questa procedura dettagliata potrebbe essere il seguente:
 per (int i = 0; i

Ora creeremo un piccolo programma in cui metteremo in pratica ciò che abbiamo visto Lista di array e in questo modo specificare un apprendimento su detta struttura dati:
 import java.util.ArrayList; public class ExampleList1 {public static void main (String [] argv) {ArrayList ourList = new ArrayList (); ourList.add ("Pietro"); ourList.add ("John"); ourList.add ("Francisco"); ourList.add ("Manolo"); ourList.add ("Paolo"); per (int i = 0; i

In questo codice vediamo che la prima cosa che facciamo è importare la classe Lista di array del pacchetto java.util, se non lo facciamo, non saremo in grado di usarlo.
Quindi abbiamo definito un nuovo elenco di elementi di tipo Corda, quindi renderemo popolare l'elenco utilizzando il metodo Inserisci ()Come possiamo vedere, non abbiamo definito un limite di elementi, questo elenco crescerà dinamicamente man mano che aggiungiamo elementi.
Finalmente con un ciclo per () e usando il metodo taglia () del nostro oggetto lista passiamo attraverso i suoi elementi e per ottenere il valore di ogni posizione usiamo il metodo ottenere () con questo possiamo poi stampare il contenuto. Vediamo come appare quando lo eseguiamo sulla nostra console:

INGRANDIRE

Con questo abbiamo finito questo tutorial, abbiamo già imparato a creare e lavorare con le strutture di dati all'interno Giava, questo ci consentirà di creare applicazioni e programmi più complessi che soddisfino le nostre esigenze.
wave wave wave wave wave