Quanta confusione! Vediamo se riesco a fare chiarezza.
Ciò che stai facendo non è dichiarare un oggetto nel vero senso della parola. Stai semplicemente dicendo che la variabile array è di tipo intero ed è un array che può contenere 10 elementi. Gli elementi sono posti di default a 0, poichè si tratta di interi.Originariamente inviato da Blastor
Buonasera a tutti, avrei un piccolo dubbio, parto dalle basi così spero di riuscire a farmi capire
questo codice mi crea un array di interi...crea l'oggetto ed istanzia le posizioni dell'array come int di valore 0....codice:int[] array=new int[10]
LinkedList è una tua classe? Spero di si.questo codice crea array di oggetti di tipo LinkedList, con tutte le posizioni null...potreste spiegarmi teoricamente perchè? e se c'è un modo tramite il costruttore di LinkedList di istanziare ogni singolo oggetto dell'array?codice:LinkedList[] lista=new LinkedList[10]
Anche qui, lo crea nulla perchè è il tipo di dato di default per gli oggetti. Quindi quello che stai facendo è allocare memoria per 10 elementi, ma non stai creando 10 oggetti! Infatti i riferimenti sono a null.
Da come ne parli nella seconda domanda, ti stai riferendo all'API di Java. Quindi mi chiedo quand è l'ultima volta che hai guardato l'API di java...
LinkedList è dichiarata in questo modo da Java 5 LinkedList<E>. Non capisco che utilizzo ne fai tu sinceramente. E' una delle classi del collection framework.
I costruttori li trovi guardando l'API di Java: http://docs.oracle.com/javase/7/docs...nkedList%28%29
Bhe, non vi sono altri modi. Prima si specificano le dimensioni di un array, e poi lo si popola. Come ho detto prima quel codice non crea ed instanzia nulla; stai allocando memoria per un array (che è vero venga trattato come un oggetto) che può contenere i 10 elementi, ma tu i 10 elementi non li stai inserendo, 0 è solo il valore di default, come per gli oggetti è null.l'unica soluzione trovata credo sia la più banale, creo l'array e ciclando le posizioni istanzio l'oggetto...
cercavo però un modo un po meno invasivo per il metodo, o almeno volevo riuscire a capire come faceva questo codicea creare ed istanziare...codice:int[] array=new int[10]
[/quote]So anche che int non è un oggetto ma una variabile credo sia questo il motivo infatti se provo a creare
mi da lo stesso problemacodice:Int[] array=new Int[10]
Non ti seguo più... Int non esiste in Java. In java esistono int e Integer che è la classe wrapper per int.
int è un tipo semplice, non è una variabile.
Spiegata meglio ciò che vuoi sapere, perchè è tutto molto poco chiaro.![]()

Rispondi quotando