introduction java arrays
Questo tutorial introduce il concetto di array in Java. Abbiamo anche introdotto argomenti correlati come lunghezza, tipi di dati, clonazione, copia, ordinamento, ecc. In array Java:
Nella programmazione ti occupi sempre dei dati. I dati devono essere archiviati in posizioni di memoria e per accedervi di volta in volta ed elaborarli di conseguenza, è necessario dargli un nome. Questo viene fatto dalle variabili.
Quindi, se vuoi memorizzare il valore 10 in memoria, dichiarerai una variabile di tipo int e memorizzerai il valore come int num = 10;
Supponiamo ora che i requisiti del programma siano tali da richiedere 10 variabili di tipo int.
In questo caso, dovrai dichiarare 10 variabili di tipo int come segue:
int a1;
int a2;
int a3;
int a4;
int a5;
int a6;
int a7;
int a8;
int a9;
int a10;
Le dichiarazioni di cui sopra porranno l'inutile onere di manutenzione sul programmatore. Invece di dichiarare così tante variabili, che ne dici di dichiarare una singola variabile e quindi assegnare tutti questi 10 valori a questa variabile? Questo è ciò che faremo quando definiremo un array e gli assegneremo dei valori.
Cominciamo con gli array in Java.
Cosa imparerai:
- Java Array
- Conclusione
Java Array
Gli array non sono altro che una struttura di dati che viene utilizzata per contenere gli elementi di dati dello stesso tipo in modo sequenziale. Dall'esempio precedente, è possibile modificare la definizione di dieci variabili in una singola variabile e memorizzare tutti i dieci valori utilizzando pedici.
Facciamolo nel modo indicato di seguito:
A (0) = 1;
A (1) = 2;
A (2) = 3;
A (3) = 4;
A (4) = 5;
A (5) = 6;
A (6) = 7;
A (7) = 8;
A (8) = 9;
A (9) = 10;
Abbiamo memorizzato tutti e dieci i valori nella variabile basata sull'indice. Il primo indice inizia da 0. Quindi il primo valore è a 0thindex e l'ultimo valore è a 9thindice. Questi indici sono anche chiamati Subscripts.
Nella memoria del computer, il suddetto Array A sarà rappresentato come:
Ora possiamo definire un array come una variabile che è una raccolta di elementi dello stesso tipo di dati e archiviati in posizioni di memoria contigue. La dimensione di un array è specificata al momento della dichiarazione e quindi la dimensione è fissa.
Gli array di cui parleremo in questo tutorial sono array a dimensione fissa o statici. Java supporta anche array dinamici chiamati 'ArrayList' la cui dimensione può essere modificata al volo. Discuteremo in dettaglio ArrayList più avanti.
Di seguito sono elencate alcune delle caratteristiche degli array in Java:
- In Java, un array è un oggetto istanziato da una classe generata dinamicamente.
- Internamente, l'array Java implementa interfacce serializzabili e clonabili.
- L'array Java ha anche una classe di oggetti come classe genitore.
- È possibile memorizzare valori di tipo incorporati e derivati negli array Java.
- Puoi ottenere la lunghezza di un array usando il membro length e non sizeof come in C / C ++.
- Java consente array singoli e multidimensionali.
In questo tutorial, introdurremo tutti i concetti di array al lettore che stiamo andando
per coprire in questa serie su Java Arrays.
Iniziamo!!
Java Array - Creazione e inizializzazione
È necessario creare array per utilizzarli nel programma. La creazione di array include la specifica del tipo di dati degli elementi che l'array conterrà e il numero di elementi che l'array conterrà.
Discuteremo la creazione di array in vari modi e anche in diversi metodi utilizzando i quali possiamo inizializzare gli array.
Di seguito viene fornito un esempio di uno dei metodi utilizzati per la creazione e l'inizializzazione dell'array.
siti di streaming anime gratuiti doppiati in inglese
public class Main { public static void main(String() args) { int() myArray; myArray = new int(5); myArray(0) = 1; myArray(1) = 3; System.out.println('myArray(0):' + myArray(0)); System.out.println('myArray(1):' + myArray(1)); System.out.println('myArray(2):' + myArray(2)); System.out.println('myArray(3):' + myArray(3)); System.out.println('myArray(4):' + myArray(4)); } }
Produzione:
In questo programma, abbiamo dichiarato un array int e quindi ne abbiamo creato un'istanza utilizzando new. Quindi abbiamo elementi inizializzati agli indici 0 e 1 con valori 1 e 3 rispettivamente.
Infine, stampiamo tutti gli elementi dell'array. Nota che gli elementi che non abbiamo inizializzato hanno valori predefiniti come 0 poiché il tipo di array è int.
Stampa elementi in Java Array
Quando gli array vengono utilizzati nei programmi, devono essere visualizzati. Per visualizzare gli elementi dell'array, utilizziamo metodi speciali come for loop, forEach loop, metodo toString della classe Arrays, ecc. Questo argomento include tutti i vari metodi usati per stampare gli elementi dell'array.
Di seguito è riportato un programma che utilizza il metodo toString della classe 'Arrays' per stampare gli elementi dell'array.
import java.util.*; public class Main { public static void main(String() args) { int() myArray; myArray = new int(5); myArray(0) = 1; myArray(1) = 3; System.out.println('Array Elements : ' + Arrays.toString(myArray)); } }
Produzione:
Lunghezza della matrice in Java
La lunghezza di un array indica il numero di elementi presenti nell'array. A differenza di C / C ++, dove usiamo l'operatore 'sizeof' per ottenere la lunghezza dell'array, l'array Java ha la proprietà 'length'. Esploreremo di più su questa proprietà in seguito.
Di seguito è riportato il programma che visualizza la lunghezza di un array.
import java.util.*; public class Main { public static void main(String() args) { int() myArray = {1,3,5,7,9,11}; System.out.println('Size of the given array : ' + myArray.length); } }
Produzione:
In questo programma, abbiamo inizializzato l'array usando il valore letterale dell'array e quindi usando la proprietà length mostriamo la dimensione / lunghezza dell'array.
Tipi di dati array Java
Puoi avere array di tutti i tipi di dati. In questo argomento esploreremo gli array con diversi tipi di dati e le loro definizioni.
Nel programma seguente, abbiamo definito array di tipo int e string e visualizzato i rispettivi contenuti .
import java.util.*; public class Main { public static void main(String() args) { int() myArray = {1,3,5,7,9,11}; String() strArray = {'one','two','three','four','five'}; System.out.println('Elements of int array : ' + Arrays.toString(myArray)); System.out.println('Elements of String array : ' + Arrays.toString(strArray)); } }
Produzione:
Aggiunta di un elemento a un array
L'aggiunta di un elemento all'array è un'operazione importante. Gli array in Java sono statici e di lunghezza fissa. Quindi, è necessario fornire un insieme specifico di operazioni per aggiungere un nuovo elemento all'array. I vari metodi per aggiungere un elemento all'array saranno discussi qui.
Uno dei metodi per aggiungere un elemento all'array consiste nell'usare ArrayList come struttura intermedia. Convertiamo l'array in ArrayList. Quindi aggiungiamo l'elemento a ArrayList e cambiamo di nuovo ArrayList in array.
Il programma seguente mostra questa implementazione.
import java.util.*; class Main { public static void main(String() args) { int n = 10; int i; Integer intArray() = { 1, 2, 3, 4, 5 }; System.out.println('Original Array:
' + Arrays.toString(intArray)); int num = 10; Listintlist = new ArrayList(Arrays.asList(intArray)); intlist.add(num); intArray = intlist.toArray(intArray); System.out.println('
Array after adding ' + num + '
' + Arrays.toString(intArray)); } }
Produzione:
visual studio team foundation server 2015 tutorial
Rimuovi / Elimina un elemento da un array
Anche la rimozione di un elemento da un array è un'altra operazione importante. Java non ci consente direttamente di rimuovere un elemento. Quindi utilizziamo altre opzioni per farlo.
Di seguito è riportata l'implementazione di uno dei metodi per rimuovere l'elemento da un array utilizzando un ArrayList .
import java.util.*; importjava.util.stream.*; class Main { public static void main(String() args) { int() tensArray = { 10,20,30,40,50}; System.out.println('Input Array: '+ Arrays.toString(tensArray)); int index = 1; System.out.println('Index to be removed: ' + index); if (tensArray == null || index = tensArray.length) { System.out.println('No element to delete'); } ListtensList = IntStream.of(tensArray).boxed().collect(Collectors.toList()); tensList.remove(index); tensArray = tensList.stream().mapToInt(Integer::intValue).toArray(); System.out.println('Array after deleting element at '+ index + ':
'+ Arrays.toString(tensArray)); } }
Produzione:
Qui, prima convertiamo l'array in ArrayList e quindi rimuoviamo l'elemento utilizzando il metodo ArrayList remove. Dopodiché, riconvertiamo ArrayList nell'array e restituiamo l'array modificato.
Copia di un array in Java
Discuteremo alcune delle operazioni per copiare gli elementi di un array da un array a un altro. Discuteremo anche della copia superficiale e profonda degli array.
Uno di questi metodi è il metodo copyOf () della classe Arrays del pacchetto java.util .
import java.util.*; public class Main { public static void main(String() args) { int() intArray = {10,15,20,25,30,35,40}; int array_len = intArray.length; System.out.println('Original Array:' + Arrays.toString(intArray)); int() copy_intArray = Arrays.copyOf(intArray, array_len); System.out.println('Copied Array:' + Arrays.toString(copy_intArray)); } }
Produzione:
Il metodo 'copyOf' della classe Arrays copia l'array specificato come argomento insieme alla sua lunghezza in un altro array.
Clonazione di un array in Java
Puoi anche creare un clone di un array in Java. Java fornisce un metodo per questo nel pacchetto ArrayUtils. Esploreremo di più sulla clonazione qui.
Implementiamo un semplice esempio che clona un array in Java.
import java.util.*; class Main { public static void main(String args()) { int num_Array() = {5,10,15,20,25,30}; int clone_Array() = num_Array.clone(); System.out.println('Original num_Array:' + Arrays.toString(num_Array)); System.out.println('Cloned num_Array:'+ Arrays.toString(clone_Array)); } }
Produzione:
Pertanto, la clonazione consiste semplicemente nel copiare utilizzando un metodo diverso.
Ordinamento di array in Java
Ordinare gli elementi dell'array o ordinarli in ordine crescente o decrescente è una delle operazioni importanti. La maggior parte delle applicazioni richiede che i dati vengano ordinati. Java fornisce un filtro di ordinamento per gli array. Ne discuteremo in dettaglio durante l'ordinamento.
Di seguito è riportato un semplice esempio di S ortare un array in Jave usando il metodo Arrays.sort () .
import java.util.Arrays; public class Main { public static void main(String() args) { int() num_Array = {115,32,56,78,94,108,100,63}; System.out.println('Original Array: ' + Arrays.toString(num_Array)); Arrays.sort(num_Array); System.out.println('Sorted Array: ' + Arrays.toString(num_Array)); } }
Produzione:
Come mostrato sopra, il metodo di ordinamento della classe Arrays ordina gli elementi dell'array in ordine crescente.
Invertire un array in Java
Anche l'inversione della sequenza degli elementi non è fornita dagli array. Proprio come rimuovere, dobbiamo fare un po 'di inversione di tendenza e ottenere i risultati. In questo argomento vedremo i metodi per invertire un array.
Il seguente programma mostra il file implementazione dell'inversione di un array .
import java.util.*; public class Main { public static void main(String() args) { Integer () even_Arrayr = {2,4,6,8,10}; System.out.println('Original Array:' + Arrays.asList(even_Arrayr)); Collections.reverse(Arrays.asList(even_Arrayr)); System.out.println('Reversed Array:' + Arrays.asList(even_Arrayr)); } }
Produzione:
Indice della Matrice Fuori Dai Limiti d'Eccezione
Quando si tenta di accedere agli elementi dell'array oltre la lunghezza specificata o un indice negativo, il compilatore genera l'eccezione 'ArrayIndexOutOfBounds'. Esploreremo di più su questa eccezione nel nostro argomento correlato.
import java.util.ArrayList; public class Main { public static void main(String() args) { ArrayListmyList = new ArrayList(); myList.add('one'); myList.add('two'); System.out.println(myList.get(2)); } }
Produzione :
Nel programma sopra, abbiamo un ArrayList con due voci e proviamo a ottenere la voce all'indice 2 che non esiste. Quindi il programma fornisce l'eccezione IndexOutofBounds.
Java String Array e vari metodi
Tra tutti i tipi di dati supportati da Java, String è il più importante. Quindi anche l'array di tipo String merita una discussione speciale. Poiché i dati contenuti in un array di stringhe sono principalmente testo, sono disponibili vari metodi per manipolare il testo.
import java.util.ArrayList; public class Main { public static void main(String() args) { String() rgb = {'Red', 'Green', 'Blue'}; System.out.println('The string array elements:'); for (String item: rgb) { System.out.print(item + ' '); } } }
Produzione:
Questo è un programma di base per array di stringhe. Abbiamo appena dichiarato un array di stringhe e visualizzato il suo contenuto utilizzando il ciclo forEach.
Array multidimensionali in Java
Finora abbiamo visto solo array unidimensionali. Java supporta anche array multidimensionali con elementi per lo più disposti in righe e colonne. Gli array in Java diventano più complessi poiché ogni elemento dell'array può contenere un altro array.
Esploreremo gli array multidimensionali in Java insieme alle loro operazioni specifiche qui.
Implementiamo un esempio di matrice bidimensionale.
class Main { public static void main(String args()) { // declaring and initializing 2D array int array_2d()() = { {1,2,3},{4,5,6},{7,8,9} }; System.out.println('The two-dimensional array is as follows:'); for (int i=0; i<3 ; i++) { for (int j=0; j < 3 ; j++) System.out.print(array_2d(i)(j) + ' '); System.out.println(); } }
Produzione:
Java array di oggetti
Oltre a memorizzare tipi primitivi, gli array java possono anche memorizzare oggetti. In questo argomento, esploreremo alcuni esempi di una serie di oggetti.
differenza tra test di sistema e test di accettazione dell'utente
Di seguito viene fornito un esempio.
class Main{ public static void main(String args()){ Test testobj() = new Test(2) ; testobj(0) = new Test(); testobj(1) = new Test(); testobj(0).setData(1,3); testobj(1).setData(2,4); System.out.println('For Array Element 0 (testobj(0)):'); testobj(0).displayData(); System.out.println('For Array Element 1 (testobj(1)):'); testobj(1).displayData(); } } class Test{ int val1; int val2; public void setData(int c,int d){ val1=c; val2=d; } public void displayData(){ System.out.print('val1 ='+val1 + '; val2 ='+val2 + '
'); } }
Produzione:
Possiamo avere array che contengono elementi come oggetti. Nel programma sopra, abbiamo un array di oggetti della classe Test. Chiamiamo individualmente le funzioni membro per ogni oggetto per impostare e visualizzare i valori.
Restituisce un array in Java
Allo stesso modo, in cui restituiamo una variabile da qualsiasi metodo, possiamo restituire anche un array. Allo stesso modo, possiamo passare un array a un metodo. Entrambe queste possibilità saranno discusse con esempi qui.
Di solito, un riferimento all'array viene passato a / da un metodo.
Il seguente programma mostra la restituzione di un array in Java .
class Main { static int() add_sub(int val1, int val2) { int() result = new int(2); result(0) = val1 + val2; result(1) = val1 - val2; return result; } public static void main(String() args) { int() result = add_sub(10, 5); System.out.println('val1 + val2 = ' + result(0)); System.out.println('val1 - val2 = ' + result(1)); } }
Produzione:
Nel programma sopra, eseguiamo due operazioni, ovvero addizione e sottrazione di due numeri. Il risultato di ogni operazione viene memorizzato come un elemento nella matrice. Quindi l'intero riferimento all'array viene restituito alla funzione chiamante.
Classe array Java
La classe array Java è una classe del pacchetto java.util che fornisce la funzionalità per manipolare gli array. Fornisce molte funzioni come la copia di un array, l'ordinamento, la conversione di un array in una stringa, ecc.
Java Generic Array
Abbiamo già visto i generici in Java che sono entità indipendenti dal tipo. Gli array Java possono essere generici in cui possono essere definiti come indipendenti dai tipi. Ma il codice generico non è disponibile quando viene generato il codice byte e quindi è difficile dedurre il tipo di elemento, l'array manterrà in fase di esecuzione.
Quindi, invece di array, passiamo agli elenchi dal framework delle raccolte Java ogni volta che sono richiesti generics.
Tuttavia, possiamo anche avere una struttura di array di tipo generico utilizzando uno o più metodi. Qui esploreremo questi metodi.
Di seguito viene fornito un esempio di uno dei metodi che utilizzano array di oggetti.
import java.util.Arrays; class Main { public static void main(String() args) { final int length = 5; //integer array object from Generic_Array class Generic_ArrayintArray = new Generic_Array(length); for (int i = 0; i Produzione:

Quindi, nel programma precedente, abbiamo scritto una classe array generica con array di oggetti come elemento e metodi get / set per ottenere / impostare oggetti array. Abbiamo anche sovrascritto il metodo toString della classe Arrays. Nella classe Main, creiamo due oggetti di una classe array generica di tipo Integer e String e assegniamo loro valori appropriati.
Array frastagliati in Java
Gli array irregolari sono array multidimensionali con ciascun array di membri di dimensioni diverse. Un array Jagged è anche un esempio di array di array.
Il seguente programma mostra un esempio dell'array Jagged.
class Main { public static void main(String() args) { int jagged_array()() = new int(2)(); jagged_array(0) = new int(4); jagged_array(1) = new int(2); for (int i=0; i Produzione:

Abbiamo un array 2D nel programma sopra. La prima dimensione dell'array è 4 mentre la seconda è 2. L'output mostra il contenuto di entrambe le dimensioni dell'array Jagged.
Array in Java 8
Poiché Java 8 era una versione principale di Java, passeremo attraverso le modifiche apportate agli array. Per esempio, i flussi su array sono stati introdotti in Java 8.
Importa array in Java
Possiamo includere funzionalità aggiuntive per gli array in Java importando la classe 'Arrays' del pacchetto 'java.util'.
Possiamo anche importare il pacchetto arrayutils per ulteriori funzionalità. Devi aver acquisito una maggiore conoscenza della funzionalità di importazione dai nostri esempi precedenti.
API e documentazione Java Array
L'API dell'array Java è una raccolta di tutte le funzioni che agiscono sugli array Java. Esamineremo questa interfaccia di programmazione dell'applicazione (API) qui.
Abbiamo finalmente elencato tutte le proprietà e i metodi insieme alla loro descrizione per gli array Java. Questo aiuterà i lettori con una rapida consultazione.
Domande frequenti
D # 1) Gli array sono tipi di dati primitivi in Java?
Risposta: No. Gli array non sono tipi di dati primitivi, ma gli array sono oggetti contenitore che contengono elementi dello stesso tipo di dati in posizioni contigue.
D # 2) Gli array sono tipi di riferimento in Java?
Risposta: Sì. L'array è un contenitore di oggetti e viene trattato come riferimenti.
D # 3) Puoi aumentare la dimensione di un array in Java?
Risposta: No. Dichiari gli array e ne installi le dimensioni. Una volta specificato, non è possibile modificare la dimensione dell'array.
Conclusione
In questo tutorial, ti abbiamo introdotto al concetto di array in Java. Abbiamo discusso i principali argomenti associati agli array Java.
Nelle nostre esercitazioni successive, esploreremo in dettaglio questi argomenti relativi ad Array in Java.
Buon apprendimento !!
Lettura consigliata
- Java DataType, loop, array, switch e asserzioni
- Eccezioni Java e gestione delle eccezioni con esempi
- Tutorial Java Generics con esempi
- Tutorial sull'interfaccia Java e sulla classe astratta con esempi
- Introduzione al linguaggio di programmazione Java - Tutorial video
- Java String con String Buffer e String Builder Tutorial
- Tutorial JAVA per principianti: oltre 100 tutorial video Java pratici
- Array multidimensionali e array irregolari in C #