Trova la lunghezza dell'array Java

Trova la lunghezza dell'array Java
L'array Java ha una lunghezza fissa. Non può crescere o ridursi in lunghezza. Dopo che l'array Java è stato inizializzato, la sua lunghezza non può essere cambiata. Un array Java dichiarato con un numero di lunghezza viene inizializzato automaticamente con il tipo di valore predefinito. Se l'array viene dichiarato con lunghezza indefinita e nessuna inizializzazione, Java consente al programmatore di dare all'array una lunghezza più avanti nel programma. Una volta data la lunghezza, non può essere modificata.

Java Array ha anche la proprietà di lunghezza, che restituirebbe la lunghezza dell'array. Questo articolo illustra i diversi modi in cui è possibile determinare la lunghezza dell'array Java. Mostra anche come iterare attraverso l'array Java, usando la proprietà di lunghezza.

Ricorda che l'array Java è ottenuto dalla classe oggetto. L'uso dell'oggetto array in modo normale non comporta l'importazione dell'oggetto o della classe di array nel programma.

Dichiarazione con lunghezza indefinita, senza inizializzazione

La seguente affermazione dichiara una matrice di caratteri, con lunghezza indefinita e senza inizializzazione:

char [] arr;

Questo array può essere dato una lunghezza in seguito, come nel seguente segmento di codice:

char [] arr;
arr = new char [10];

Questa lunghezza di 10 rimane durante il programma. L'array è ora inizializzato con valori predefiniti, di cui, nel caso di caratteri, il carattere vuoto ”è il valore predefinito. Ogni carattere vuoto in questo array verrebbe sostituito dal char desiderato dal programmatore. Carattere vuoto significa nessun carattere; Non è il personaggio dello spazio.

Dichiarazione con lunghezza definita, con inizializzazione predefinita

La seguente singola dichiarazione mostra come si può dichiarare un array di caratteri, lunghezza definita e inizializzazione predefinita:

char [] arr = new char [10];

Qui, "nuovo" è un operatore. Nota dove e come è stata digitata la lunghezza 10. Tutti i tipi primitivi possono essere dichiarati in questo modo. Anche i tipi di riferimento possono essere dichiarati in questo modo. Un buon esempio del tipo di riferimento è la classe stringa. La seguente dichiarazione funziona bene:

String [] arr = new String [10];

Si noti che il tipo è codificato in due luoghi: a sinistra dell'operatore di assegnazione, in una posizione particolare e sul lato destro dell'operatore di assegnazione.

Il valore predefinito per la stringa è il valore null. Il valore di 10 in entrambi i casi sopra rimane fino alla fine del programma. Ogni null nell'array verrebbe semplicemente sostituito da un oggetto stringa (letterale), in seguito, dal programmatore.

Assegnazione all'array con valori predefiniti

Dopo aver creato un array con valori predefiniti, i valori pratici possono essere assegnati agli elementi dell'array, per sostituire i valori predefiniti, come nel seguente programma:

Classe pubblica TheClass
public static void main (string [] args)
char [] arr = new char [5];
arr [0] = 'a'; arr [1] = 'b'; arr [3] = 'd'; arr [4] = 'e';
per (int i = 0; i<5; i++) System.out.print(arr[i]); System.out.print(");;
Sistema.fuori.println ();

L'output è:

A b d e

Si noti che in questo programma, nulla è stato importato. Il valore predefinito di qualsiasi elemento che non è stato assegnato rimane il valore predefinito.

Lunghezza all'inizializzazione

Esistono due modi per dichiarare un array con l'inizializzazione. Un modo è il seguente:

char [] arr = 'a', 'b', 'c', 'd', 'e';

Il lato destro di questa affermazione è il letterale dell'array. In questo caso, il letterale dell'array è assegnato all'array alla dichiarazione. Qualsiasi elemento predefinito deve essere digitato letteralmente, come nella seguente affermazione:

char [] arr = 'a', 'b', ", 'd', 'e';

Il terzo valore è il carattere vuoto. Se l'array fosse di tipo di riferimento, il valore predefinito sarebbe stato nullo, come nella seguente istruzione:

String [] arr = "one", "due", null, "quattro", "cinque";

Null è senza citazioni qui. Per queste tre affermazioni, la lunghezza è 5, che è il numero di elementi nell'array letterale. Il letterale dell'array è delimitato da parentesi graffe.

L'altro modo è il seguente:

char [] arr = new char [] 'a', 'b', 'c', 'd', 'e';

Qui, il nuovo operatore viene utilizzato, ancora senza il numero per la lunghezza. In questo caso, il letterale dell'array è subito dopo le staffe quadrate. Qualsiasi elemento predefinito deve essere digitato letteralmente, come nella seguente affermazione:

char [] arr = new char [] 'a', 'b', ", 'd', 'e';

Se l'array fosse di tipo di riferimento, il valore predefinito sarebbe stato nullo, come nella seguente istruzione:

String [] arr = new String [] "one", "due", null, "quattro", "cinque";

Null è senza citazioni. Se null è tra le citazioni, non è più nullo ma una stringa. Per queste tre affermazioni, la lunghezza è 5, che è il numero di elementi nell'array letterale.

Nella dichiarazione di array con inizializzazione pratica, il numero di elementi nel letterale dell'array è la lunghezza dell'array. Quella lunghezza rimane fino alla fine del programma.

La proprietà di lunghezza

Un array è un oggetto ereditato dalla classe oggetto. Ha una proprietà, che è di lunghezza. Finché è stata definita la lunghezza dell'array, questa proprietà restituirà sempre la stessa lunghezza fissa dell'array fino alla fine del programma. Il seguente segmento di codice illustra come utilizzare la proprietà di lunghezza:

char [] arr = 'a', 'b', 'c', 'd', 'e';
int len ​​= arr.lunghezza;
Sistema.fuori.println (len);

L'output è: 5.

Iterato tutto attraverso l'array

Il seguente codice si itera attraverso l'array. La proprietà di lunghezza può essere usata per iterare, in tutto l'array, come mostra questo programma:

Classe pubblica TheClass
public static void main (string [] args)
String [] arr = "one", "due", "tre", "quattro", "cinque";
per (int i = 0; iSistema.fuori.print (arr [i]); Sistema.fuori.stampa(");

Sistema.fuori.println ();

L'output è:

uno due tre quattro cinque

La classe di stringa non deve essere importata prima di essere utilizzata.

Ricerca normale di un valore

La seguente classe cerca il personaggio, "D", in una serie di personaggi. Quando viene visto il primo "d", l'indice dell'array viene restituito. Se viene raggiunta la fine dell'array, la lunghezza dell'array viene restituita.

classe aclass
int simplesarch ()
char [] arr = 'a', 'b', 'c', 'd', 'e';
per (int i = 0; iif (arr [i] == 'd')
ritorno i;

RITORNO ARR.lunghezza;

Nella funzione principale (), è possibile utilizzare il seguente segmento di codice:

Aclass anobj = new aclass ();
int ret = anobj.SimpleSearch ();
Sistema.fuori.println (ret);

L'output è 3. Ricorda che l'ultimo indice è la lunghezza dell'array meno 1. Quindi, se la lunghezza dell'array viene restituita, significa che il personaggio cercato non è stato visto.

Conclusione

Una volta definita la lunghezza dell'array, rimane fissa fino alla fine del programma. La lunghezza dell'array è definita nella dichiarazione dell'array, con o senza inizializzazione pratica. Se la lunghezza dell'array non è definita alla dichiarazione, allora deve comunque essere definita, con un incarico, utilizzando il nuovo operatore. L'oggetto array ha anche la proprietà, la lunghezza, per restituire la lunghezza dell'array. In Java, la proprietà è chiamata campo.