2013-01-20 27 views
15

Ho dei valori che vorrei aggiungere in un ArrayList per tenere traccia di quali numeri sono stati visualizzati. I valori sono numeri interi quindi ho creato un ArrayList;Java ArrayList per i numeri interi

ArrayList<Integer[]> list = new ArrayList<>(); 
int x = 5 
list.add(x); 

Ma non riesco ad aggiungere nulla a ArrayList utilizzando questo metodo. Funziona se uso le stringhe per l'elenco di matrici. Dovrei renderlo un array String e quindi in qualche modo convertire l'array in interi?

EDIT: Ho un'altra domanda. Mi piacerebbe che la lista contenga solo 3 valori. Come lo farei?

+1

Con generici: Lista myList = new ArrayList (); – Spen

risposta

46

Elenco di Integer.

List<Integer> list = new ArrayList<>(); 
int x = 5; 
list.add(x); 
+4

Grazie, sentiti stupido per non averlo visto. – user1692517

+0

Ho un'altra domanda. Mi piacerebbe che la lista contenga solo 3 valori. Come lo farei? – user1692517

+0

L'elenco è un array dinamico espandibile. puoi aggiungere n numero di valori da elencare. –

5

si sta cercando di aggiungere un numero intero in un ArrayList che prende un array di interi Integer[]. Dovrebbe essere

ArrayList<Integer> list = new ArrayList<>(); 

o meglio

List<Integer> list = new ArrayList<>(); 
+1

Quando si guida OP (o qualcun altro) sulla programmazione delle interfacce, fare riferimento a [Che cosa significa "programma su un'interfaccia"?] (Http://stackoverflow.com/q/383947/1065197) . –

+0

cosa significa "OP"? Lo vedo quasi ovunque, ma non ho trovato il significato di – Hengameh

+0

Poster originale/Editore originale –

0

non si dovrebbe usare Integer[] gamma all'interno della lista come ArrayList è di per sé una sorta di array. Lasciare il [] e dovrebbe funzionare

2

non si sta creando un arraylist per interi, ma si sta tentando di creare un array per array di interi.

quindi se vuoi che il tuo codice funzioni basta mettere.

0

In realtà anche quello che hai fatto non è sbagliato, la tua dichiarazione è giusta. Con la tua dichiarazione, JVM creerà un ArrayList di matrici di interi i.e ogni voce in arraylist corrisponde a un array intero quindi la tua funzione di add dovrebbe passare un array intero come parametro.

Per Es:

list.add(new Integer[3]); 

In questo modo primo ingresso di ArrayList è un array intero che può contenere al massimo 3 valori.

0

Il [] non ha senso nel momento in cui si crea un array di numeri interi perché immagino di voler aggiungere solo valori interi. Basta usare

ArrayList<Integer> list = new ArrayList(); 

per creare l'ArrayList e funzionerà.

Problemi correlati