Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Creare un array di List

    Ciao a tutti, avrei un problema: vorrei creare una array di liste dinamiche; cioe' io ho varie liste di questo tipo

    1 2 -1 0
    2 3
    1 4 0

    quindi la mia idea era di creare una array di ArrayList, tali liste poi dovranno essere dinamiche perche' dovro' manipolarle. Qual'e' la sintassi giusta? Cioe' se io volessi creare un array di 4 liste dovrei fare

    List[] array = new ArrayList[4];



    Vi ringrazio

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Linguaggio?

    (Regolamento ?)
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Chiedo scusa..... Java.....

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da albertor85
    Chiedo scusa..... Java.....
    Allora sei anche nel forum sbagliato: Java ha un forum dedicato.

    Sposto.


    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

  5. #5


    Non sono già nel forum Programmazione->Java??

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    502
    Originariamente inviato da albertor85


    Non sono già nel forum Programmazione->Java??
    Se ti hanno spostato evidentemente no

    Comunque, per un array di liste si, come hai scritto andrebbe bene.
    Ma se vuoi avere anche l'array dinamico, potresti fare un ArrayList di ArrayList di oggetti.
    Così puoi aggiungere elementi alle singole liste, ma anche una nuova lista.
    al volante son nervoso

  7. #7
    Avrei un problema: questo è il mio codice

    List[] lista = new ArrayList[2];
    int j = 0;
    int ind_list = 0;
    for ( i = 0; i < array.length; i++) { // copio l'array nell'array di liste
    lista[j].add(ind_list, array[i]);
    ind_list++;
    if ( array[i]==0 ) {
    j++;
    ind_list = 0;
    }
    }

    In sostanza, voglio copiare gli elementi di un array nell'array di liste, il carattere 0 separa tra loro le liste.
    Per esempio, se l'array è

    1 2 3 0 3 2 1 0

    lista sarà formato da due liste:

    1 2 3 0
    3 2 1 0

    Il problema è che in corrispondenza di questa riga di codice

    lista[j].add(ind_list, array[i]);

    mi viene stampata questa eccezione:

    Exception in thread "main" java.lang.NullPointerException
    at Dpll.main(Dpll.java:169)

    Sapete aiutarmi?

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    502
    Originariamente inviato da albertor85
    Avrei un problema: questo è il mio codice
    codice:
    List[] lista = new ArrayList[2];
    int j = 0;
    int ind_list = 0;
    for ( i = 0; i < array.length; i++) { // copio l'array nell'array di liste
    		lista[j].add(ind_list, array[i]);
    		ind_list++;
    		if ( array[i]==0 ) {
    			j++;
    			ind_list = 0;
    		}
    }
    In sostanza, voglio copiare gli elementi di un array nell'array di liste, il carattere 0 separa tra loro le liste.
    Per esempio, se l'array è

    1 2 3 0 3 2 1 0

    lista sarà formato da due liste:

    1 2 3 0
    3 2 1 0

    Il problema è che in corrispondenza di questa riga di codice

    lista[j].add(ind_list, array[i]);

    mi viene stampata questa eccezione:

    Exception in thread "main" java.lang.NullPointerException
    at Dpll.main(Dpll.java:169)

    Sapete aiutarmi?
    Come da regolamento, usa i tag CODE per il codice, che così non si capisce molto.

    L'eccezione è scatenata a quella riga dal fatto che stai accedendo a un elemento di array non valido, o di lista.

    EDIT: hai dichiarato lista, ma non l'hai istanziata. lista[0] e lista[1] valgono null e non puoi aggiungere un valore a null!!!!!!!!!

    PS: ma il debug delle applicazioni è diventato così fuori moda?
    al volante son nervoso

  9. #9
    Perfetto ho risolto.... Grazie mille!!!

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.