HTML.it è il sito italiano del web publishing

[JAVA] Uso di ListIterator e verifica presenza di un elemento nella lista



scegli un altro forum
    Indietro   Ricarica   Avanti Invia una risposta

Autore
Discussione     
lorenzcollixx
Utente di HTML.it



Registrato il: Sep 2011

Provenienza:

Messaggi: 33


ICQ:

MSN:

Skype:


ListIterator???
Ciao a tutti!!
Sono alle prime armi con la programmazione orientata agli oggetti ed
ho una domanda da porvi:
Se ho una LinkedList di oggetti e voglio verificare che al suo interno sia presente un oggetto con un determinato attributo, devo utilizzare l' interfaccia ListIterator scandendomi la collection oggetto per oggetto e con un if imporre la condizione che mi interessa ??oppure c'è un altro modo più pratico??
Come esempio vi porto questo pezzo di esercizio:ho una LinkedList riempita con oggetti di tipo "Personale" e devo verificare se fra questi almeno uno svolge un ruolo "amministrativo"..Come mi muovo??Io ho provato a fare così ma non mi funziona:

codice:
public static void main(String[] args) {
Personale pr1=new Personale(01,"docente",50,200);
Personale pr2=new Personale(02,"amministrativo",60,300);
Personale pr3=new Personale(03,"docente",50,400);
     LinkedList <Personale> personale=new LinkedList <Personale>();
        personale.add(pr1);
	personale.add(pr2);
	personale.add(pr3);
boolean b=false;
for(int i=0;i<personale.size();i++){
Personale pers=personale.get(i);
if(pers.getRuolo().equals("amministrativo")){
b=true;
}
}
System.out.println(b);
}


Spero possiate aiutarmi!!

Segnala ad un moderatore | IP: Collegato | Permalink

lorenzcollixx è offline Old Post 30-06-2012 01:07
Clicca qui per vedere il profilo dell'utente lorenzcollixx Clicca qui per inviare all'utente lorenzcollixx un messaggio privato Visualizza ulteriori messaggi scritti dall'utente lorenzcollixx Aggiungi l'utente lorenzcollixx alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
Kaamos
Utente di HTML.it



Registrato il: Dec 2009

Provenienza: Genova

Messaggi: 606


ICQ :

MSN :

Skype :


Re: ListIterator???
Citazione:
Originariamente inviato da lorenzcollixx
Ciao a tutti!!
Sono alle prime armi con la programmazione orientata agli oggetti ed
ho una domanda da porvi:
Se ho una LinkedList di oggetti e voglio verificare che al suo interno sia presente un oggetto con un determinato attributo, devo utilizzare l' interfaccia ListIterator scandendomi la collection oggetto per oggetto e con un if imporre la condizione che mi interessa ??oppure c'è un altro modo più pratico??
Come esempio vi porto questo pezzo di esercizio:ho una LinkedList riempita con oggetti di tipo "Personale" e devo verificare se fra questi almeno uno svolge un ruolo "amministrativo"..Come mi muovo??Io ho provato a fare così ma non mi funziona:

codice:
public static void main(String[] args) {
Personale pr1=new Personale(01,"docente",50,200);
Personale pr2=new Personale(02,"amministrativo",60,300);
Personale pr3=new Personale(03,"docente",50,400);
     LinkedList <Personale> personale=new LinkedList <Personale>();
        personale.add(pr1);
	personale.add(pr2);
	personale.add(pr3);
boolean b=false;
for(int i=0;i<personale.size();i++){
Personale pers=personale.get(i);
if(pers.getRuolo().equals("amministrativo")){
b=true;
}
}
System.out.println(b);
}


Spero possiate aiutarmi!!


A prima vista sembra corretto, posta la classe Personale.

Segnala ad un moderatore | IP: Collegato | Permalink

Kaamos è offline Old Post 30-06-2012 01:23
Clicca qui per vedere il profilo dell'utente Kaamos Clicca qui per inviare all'utente Kaamos un messaggio privato Visualizza ulteriori messaggi scritti dall'utente Kaamos Aggiungi l'utente Kaamos alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
lorenzcollixx
Utente di HTML.it



Registrato il: Sep 2011

Provenienza:

Messaggi: 33


ICQ :

MSN :

Skype :


ecco la classe:
codice:
public class Personale {
private int codice;
private String ruolo;
private int costorario;
private int maxore;

public Personale(int codice, String ruolo, int costorario, int maxore) {
	this.codice = codice;
	this.ruolo = ruolo;
	this.costorario = costorario;
	this.maxore = maxore;
}

public int getCodice() {
	return codice;
}

public void setCodice(int codice) {
	this.codice = codice;
}

public String getRuolo() {
	return ruolo;
}

public void setRuolo(String ruolo) {
	this.ruolo = ruolo;
}

public int getCostorario() {
	return costorario;
}

public void setCostorario(int costorario) {
	this.costorario = costorario;
}

public int getMaxore() {
	return maxore;
}

public void setMaxore(int maxore) {
	this.maxore = maxore;
}




public boolean equals(Object o) {
	if(o instanceof Personale){
		Personale p=(Personale)o;
		return (p.getCodice()==(this.getCodice()));
	}
		return false;
}

@Override
public String toString() {
	return "Personale [codice=" + codice + ", costorario=" + costorario
			+ ", maxore=" + maxore + ", ruolo=" + ruolo + "]";
}


	
}

Segnala ad un moderatore | IP: Collegato | Permalink

lorenzcollixx è offline Old Post 30-06-2012 07:38
Clicca qui per vedere il profilo dell'utente lorenzcollixx Clicca qui per inviare all'utente lorenzcollixx un messaggio privato Visualizza ulteriori messaggi scritti dall'utente lorenzcollixx Aggiungi l'utente lorenzcollixx alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
Alhazred
Utente di HTML.it



Registrato il: Oct 2003

Provenienza:

Messaggi: 4373


ICQ :

MSN :

Skype :


Potresti spiegare cosa intendi per "non funziona"?
Non ti stampa il dato? Te lo stampa sbagliato? Ottieni un errore? Altro?


__________________
Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn
Il mio sito

Segnala ad un moderatore | IP: Collegato | Permalink

Alhazred è offline Old Post 30-06-2012 09:10
Clicca qui per vedere il profilo dell'utente Alhazred Clicca qui per inviare all'utente Alhazred un messaggio privato Visualizza ulteriori messaggi scritti dall'utente Alhazred Aggiungi l'utente Alhazred alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
Kaamos
Utente di HTML.it



Registrato il: Dec 2009

Provenienza: Genova

Messaggi: 606


ICQ :

MSN :

Skype :


Ho copiato ed incollato tutto il codice e funziona, stampa correttamente true...

Segnala ad un moderatore | IP: Collegato | Permalink

Kaamos è offline Old Post 30-06-2012 12:25
Clicca qui per vedere il profilo dell'utente Kaamos Clicca qui per inviare all'utente Kaamos un messaggio privato Visualizza ulteriori messaggi scritti dall'utente Kaamos Aggiungi l'utente Kaamos alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
lorenzcollixx
Utente di HTML.it



Registrato il: Sep 2011

Provenienza:

Messaggi: 33


ICQ :

MSN :

Skype :


Grazie per la disponibilità...Commettevo uno stupido errore io nel lanciare il programma su eclipse..grazie ancora!!!))

Segnala ad un moderatore | IP: Collegato | Permalink

lorenzcollixx è offline Old Post 02-07-2012 11:03
Clicca qui per vedere il profilo dell'utente lorenzcollixx Clicca qui per inviare all'utente lorenzcollixx un messaggio privato Visualizza ulteriori messaggi scritti dall'utente lorenzcollixx Aggiungi l'utente lorenzcollixx alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
valia
Utente di HTML.it



Registrato il: Feb 2007

Provenienza:

Messaggi: 3753


ICQ :

MSN :

Skype :


per sicurezza sarebbe meglio che implementasse anche il metodo hascode:
solo l'implementazione corretta di hashcode e equals garantisce l'uguaglianza tra due oggetti, non violando il contratto di hashcode (""Equal objects must have equal hash codes"")


__________________
RTFM Read That F*** Manual!!!

Segnala ad un moderatore | IP: Collegato | Permalink

valia è offline Old Post 02-07-2012 11:22
Clicca qui per vedere il profilo dell'utente valia Clicca qui per inviare all'utente valia un messaggio privato Visualizza ulteriori messaggi scritti dall'utente valia Aggiungi l'utente valia alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
Tutte le ore sono con fuso orario CET. Ora sono le 08:40.     

    Ultima discussione   Prossima discussione Invia una risposta
Versione per la stampa | Invia il thread via email | Ricevi aggiornamenti sul thread | Scarica il thread
 

Cerchi un argomento specifico e hai fretta? Usa il motore di ricerca