Dubbio su Lunghezza array
Ciao a tutti sto studiando gli ArraY ma ho un dubbio che è il seguente lo si vede evidenziato nel codice con queste barre // allora
public static void main (String[] argv ){ Scanner tastiera = new Scanner (System.in); System.out.println("Quante temperature si devono inserire ? " ) int dimensione = tastiera.nextInt() ; // ho letto che questa dimensione potrebbe cambiare ed essere diversa da temperatura.length, questo nn riesco a capire , xkè se cambia dimensione cambia per forza anche la dimensione di temperatura double[] temperatura = new double [dimensione]; } e poi la lunghezza di un array non si può modificare...insomma se qualcuno riesce a farmi chiarezza grazieeeeeee!!
Risposte
Credo che tu abbia frainteso quello che hai letto o che il discorso fosse comunque lungo o complicato di quanto il tuo commento lasci intendere. La dimensione di un array è fissa una volta che l'array viene creato e quindi, al momento della creazione temperatura.length e dimensione devono essere uguali. D'altra parte, dimensione non è dichiarata come final e può quindi cambiare nel corso dell'esecuzione del programma, anche se credo che una cosa del genere abbia in generale poco senso farla (si rende solo il codice più difficile da leggere in quanto si da normalmente per scontato che dimensione rappresenti sempre la dimensione dell'input. Immagino fosse questo quello che la fonte voleva trasmettere. In ogni caso io avrei scritto il codice nella versione:
final int dimensione = tastiera.nextInt(); // a questo punto dimensione è costante e non può cambiare double[] temperatura = new double[dimensione];
okey grazie io scriverò come hai scritto tu anche perchè è più sensato! !! Cosi dimensione siamo sicuri è uguale alla lunghezza nominale dell ' Array ...altrimenti viene fuori un pasticcio ahahha grazie eh !