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

    [JAVA] - escludere oggetti da una lista

    Ciao a tutti,

    qualcuno saprebbe dirmi come integrare il codice seguente per escludere dalla lista di oggetti "myObjectList" tutti gli oggetti con valore di un particolare attributo (chiamiamolo 'attrib1'...) uguale al valore di una certa variabile di sessione (chiamiamola 'varSess1')?

    codice:
            
            Collection myObjectList = null;
            ........  acquisizione della lista ..............
    
            Iterator iterate = myObjectList.iterator();        
            myObject myOb = null;
            while (iterate.hasNext()) {
               ..................
                myOb= (myObject)iterate.next();
               ..................
            }

    So che il codice postato è del tutto inutile così com'è, ma è per dare un'idea di partenza.... In pratica, cosa dovrei mettere all'interno del 'while'?

    Spero di essermi fatto capire e confido nel vostro aiuto...

    Ciao ciao

  2. #2
    la tua lista di oggetti è un Vector di Oggetti dello stesso tipo o tipo diverso maderivati da una classe comune?
    Write Once, Run Everywhere.
    Write Less, Do More.

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [JAVA] - escludere oggetti da una lista

    Originariamente inviato da FastMagister
    In pratica, cosa dovrei mettere all'interno del 'while'?
    Beh, immagino che nella tua classe myObject avrai definito un apposito metodo "getter" per ottenere il valore di quel certo campo del'oggetto che ti interessa. A quel punto confronti il valore (come dipende dal tipo) e quindi fai o non fai qualcosa a seconda di quello che ti serve.

    Inoltre hai detto "escludere dalla lista" e non mi è chiaro se vuoi proprio eliminare l'elemento dalla collezione oppure se vuoi solo "filtrarlo" durante la tua elaborazione. Se devi eliminarlo devi usare per forza il remove() dell'iteratore.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Si, dovrei proprio eliminarlo dalla collezione. Mi illustreresti con un esempio banale come utilizzare il metodo remove() in un ciclo while per un operazione del genere?

    Grazie, ciao

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da FastMagister
    Si, dovrei proprio eliminarlo dalla collezione. Mi illustreresti con un esempio banale come utilizzare il metodo remove() in un ciclo while per un operazione del genere?
    È molto semplice, riprendo un pochino il codice che hai postato tu:

    codice:
    Iterator iterate = myObjectList.iterator();        
    
    while (iterate.hasNext()) {
        myObject myOb= (myObject) iterate.next();
    
        if (se_è_quello_che_devi_eliminare)
            iterate.remove();
    }
    Dove nella condizione del if metterai il test per stabilire in base a dei tuoi criteri (che non posso ovviamente sapere io) se eliminare o no l'elemento.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.