|
|
|
|
Strumenti |
30-05-2009, 10:41 | #1 |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1279
|
[java]scorrere arrayList di oggetti,confrontando al suo interno certi campi, for?
ciao a tutti.. sto realizzando un progetto per l'università..
ho diverse classi che al loro interno hanno un arrayList per gestire una sorta di archivio.. in alcune classi ho la necessita di scorrere e verificare o trovare qualche oggetto negli arraylist, confrontando i campi dell'oggetto (esempio il nome, la matricola, ecc..) in tutti i metodi ho usato sempre il ciclo for, in questa maniera: Codice:
metodo(String nome... ecc..){ for(int i=0;i<ARRAYLISTUSATO.size();i++) if(ARRAYLISTUSATO.get(i).getNome().equals(nome in input)) fai qualcosa...; fai altro; } cioè nel caso peggiore, il mio oggetto è l'ultimo elemnto dell'arrayList, e quindi lo dovrei scorrere tutto.. c'è qualcosa che non mi convince...
__________________
ho concluso affari con i seguenti forum: aessenet, amd planet, hwtweackers, hwupgrade. in questo forum con: cicos, hungwavy se si scrive così, jcd,JeanCaneo, solertes, remok, Krosis,giorgio156c,-rambo-, gertuzz,dOkTOR_dO,Leland Gaunt,f.loiacono, ercagno Ultima modifica di marius84 : 30-05-2009 alle 10:43. |
30-05-2009, 12:31 | #3 |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1279
|
perchè ho visto su alcuni testi che usano iterator... e non so bene a cosa serve, o se è piu prestante..
__________________
ho concluso affari con i seguenti forum: aessenet, amd planet, hwtweackers, hwupgrade. in questo forum con: cicos, hungwavy se si scrive così, jcd,JeanCaneo, solertes, remok, Krosis,giorgio156c,-rambo-, gertuzz,dOkTOR_dO,Leland Gaunt,f.loiacono, ercagno |
30-05-2009, 13:25 | #4 |
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2745
|
Nel caso dell'ArrayList va bene anche così perché è implementato come un array circolare e quindi l'accesso all'elemento i-esimo richiede un tempo costante e non è necessario prima scorrere tutti i precedenti.
|
30-05-2009, 13:33 | #5 |
Senior Member
Iscritto dal: Jul 2006
Città: Bergamo
Messaggi: 401
|
Puoi anche fare una cosa del genere (che io preferisco):
Codice:
ArrayList<Item> arr; ...lo riempi ecc... for(Item i : arr) //che si traduce esattamente in "per ogni Item i in arr" if(i.getNome().equals("pinco pallino")) ...fai qualcosa... ...ecc ecc...
__________________
iMac 27" 5K |
30-05-2009, 13:51 | #6 |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1279
|
interessante,provo subito
__________________
ho concluso affari con i seguenti forum: aessenet, amd planet, hwtweackers, hwupgrade. in questo forum con: cicos, hungwavy se si scrive così, jcd,JeanCaneo, solertes, remok, Krosis,giorgio156c,-rambo-, gertuzz,dOkTOR_dO,Leland Gaunt,f.loiacono, ercagno |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 01:33.