Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    103

    [java] sostituzione ArrayList

    nel mio codice ho usato:

    ArrayList listaOggetti=new ArrayList();

    mi è bastato aggiungere un semplice metodo:


    public void aggiungiElemento(Oggetto occupante)
    {
    this.listaOggetti.add(occupante);
    }
    e ogni volta che aggiungevo un elemento mi bastava fare:

    matrice.aggiungiElemento(this);

    ora mi sono resa conto che vorrei memorizzare oltre all'oggetto anche un valore long, cosa mi conviene usare per non stravolgere tutto il resto del codice?

  2. #2
    Esiste già un metodo add per le ArrayList, ad esempio:

    codice:
    ArrayList listaOggetti=new ArrayList();
    listaOggetti.add(oggetto);
    Comunque nel tuo caso potresti utilizzare (a seconda di ciò che devi farci dopo) HashMap, TreeMap, LinkedHashMap e Hashtable Creare tabella in Java

  3. #3
    Utente di HTML.it L'avatar di nether
    Registrato dal
    Dec 2006
    Messaggi
    376
    Comunque nel tuo caso potresti utilizzare (a seconda di ciò che devi farci dopo) HashMap, TreeMap, LinkedHashMap e Hashtable
    secondo me non ha senso creare una struttura di tipo "mappa" semplicemente per elencare delle coppie di valori (come mi sembra sia il caso definito da uranya). Lo scopo di una mappa e' quello di avere un'associazione chiave -> valore, che concettualmente non e' la stessa cosa di un elenco di semplici coppie di valori. Infatti, se anziche' coppie di valori si trattasse di "triplette" di valori definiamoli "equiparati", gia' una struttura di tipo mappa non andrebbe piu' bene.

    Per me o crei una classe ad hoc che contiene sia una proprieta' di tipo "Oggetto" che una di tipo "Long" (o quello che e') e crei una lista di oggetti di quella classe, oppure butti dentro nella tua lista un array di oggetti (Object[]) che conterra' nel tuo caso nella posizione 0 la tua entita' "Oggetto" e nella posizione 1 un oggetto di tipo Long.

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.