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

    Soluzione ad un problema si memorizzazione

    Salve a tutti.....avrei un ultimo problema da risolvere circa la lettura di un file.
    Io ho un xml che ha ad esempio una stringa DRUG, e successivamente una serie di elementi chiamati target che devo memorizzare. Considerando che i DRUG sono circa 1000....e che hanno vari target, cone associarli ai rispettivi DRUG? Premetto che i drug li memorizzo in un arraylist....ma vale la pena per ognuno avere un' altra arraylist contenente tutti i target? A livello di risorse....

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    E perchč no?
    Quella č la struttura: tanti DRUG e per ciascuno di essi, tanti TARGET.
    Quindi, secondo me sģ. Poi, ovviamente, tutto dipende dalla memoria disponibile e da quanta memoria "occupa" ciascuno di questi oggetti.


    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
    Ah benissimo. Avevo pensato di usare un ciclo while in modo che ad ogni drug se trovo dei target creo un arraylist....solo che in questo modo come faccio a tenere traccia di ogni arraylist?

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    347
    un'altra arraylist portrebbe andar bene! Oppure se sai esattamente che i drug sono 1000 allora usa un array nativo

  5. #5
    Ah si...ma se volessi creare ogni volta un arraylist come faccio? Cioč se io ne creo uno.

    Arraylist list1 = new Arraylist ()

    Ma se lo faccio in un ciclo while non sovrascrivo lo stesso array? Come faccio a crearne cosģ tanti e a tenerne traccia? Scusa ma sono proprio niubbo....

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    347
    No, non lo sovrascrivi proprio perché fai List a = new ArrayList() in un ciclo, quindi quel riferimento all'oggetto array vale solo fino alla fine del ciclo. Ovviamente per non perdere la lista appena creata, tu fuori dal ciclo ti crei un'altro arraylist che chiameremo "b" e nel ciclo scrivi:
    List<Target> a = new ArrayList();
    //..fai le tue operazioni..
    b.add(a);

    A questo punto che succede: 'a' viene eliminato dato che il ciclo č finito ma noi ne abbiamo "tenuto traccia" salvandolo in b!
    Quel problema di sovrascrittura di cui parlavi succederebbe se tu creassi la lista 'a' fuori dal ciclo. Mi pare si chiami aliasing questa "sovrascrittura".

    Ps: se ho detto qualche sciocchezza corregetemi

  7. #7
    Aaaah! Elementare Watson
    Non ci avevo pensato...certo vedo anxhe se riesco a fare comunque il lavoro dentro il ciclo while, altrimenti inaerisco la lista in un arraylist. Ottimo.
    Grazie e buona Pasqua!!!

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    347
    No, non ALTRIMENTI... A te quel while serviva a riempire una lista di oggetti no? Io intendevo questo con "fai le tue operazioni" dato che non so esattamente cosa devi fare. Poi la devi salvare in un'altra lista se no la perdi... Ovviamente se gią nel while sai che non ti serve, non la salvi.

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.