Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Dubbio array

  1. #1

    Dubbio array

    Salve non riesco a capire una cosa con gli array :

    codice:
    public class Arraynumeri {
    	int numeri[]= new int[10];
    	numeri[0]=1;
    	numeri[1]=2;
    	numeri[2]=3;
    	numeri[3]=4;
    	numeri[4]=5;
    	numeri[5]=6;
    	numeri[6]=7;
    	numeri[7]=8;
    	numeri[8]=9;
    	numeri[9]=10;
    	
    
    public int valorenumeri(int indice){
    	
    	return numeri[indice];
    }
    }
    Se eseguo questo codice ottengo un errore , sono obbligato a dichiarare e inizializzare l'array dentro al metodo , perchè?

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Re: Dubbio array

    Originariamente inviato da pippuccio76
    Salve non riesco a capire una cosa con gli array :


    Se eseguo questo codice ottengo un errore , sono obbligato a dichiarare e inizializzarel'array dento al metodo , perchè?
    Perchè qualunque istruzione (che non sia una dichiarazione, o dichiarazione + inizializzazione) deve essere effettuata dentro ad un metodo. Al di fuori dei metodi non è possibile svolgere operazioni (chi le dovrebbe svolgere? E quando?). Questa cosa dovrebbe essere scritta nelle primissime pagine di un qualunque manuale di Java.

    Esiste una casistica molto particolare, che non sto qui a trattare perchè non è il tuo caso, che consiste nell'inizializzazione statica...


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Scusami se dichiaro una variabile d'istanza lo posso fare fuori dai metodi , questo non vale per gli array?

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da pippuccio76
    Scusami se dichiaro una variabile d'istanza lo posso fare fuori dai metodi , questo non vale per gli array?
    Come già detto, al di fuori dei metodi è possibile fare solo dichiarazione di variabili (di qualunque tipo, anche array) o dichiarazione + inizializzazione, ma non si possono scrivere altri tipi di istruzione. Tu stai cercando di effettuare delle assegnazioni (che non sono, né una dichiarazione, né una inizializzazione, ma appunto delle assegnazioni).

    Se vuoi effettuare dichiarazione + inizializzazione (con contestuale assegnazione dei valori) dell'array, dovrai usare una sintassi diversa:

    codice:
    int numeri[]= {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    
    oppure (equivalente)
    
    int numeri[]= new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    Questa è una dichiarazione + inizializzazione di un array di 10 elementi con i valori indicati.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.