[Java] Vector e metodo equals[Risolto]
[Java] Vector e metodo equals[Risolto]
Premetto che sono un neofita di java.
Ho realizzato una mia classe, e mi trovo a dover utilizzare vei vector di oggetti di questa classe, fin qui tutto ok. Ora vorrei usare i metodi contains() removaAll(collection) e retainAll(collection) che per quel che ho capito usano il metodo equals per stabilire se 2 oggetti sono uguali. Vorrei che usassero un mio metodo equals . Come devo fare? Sono abbastanza sicuro che la cosa sia fattibile solo non so come.
Gazie in anticipo.
Ho realizzato una mia classe, e mi trovo a dover utilizzare vei vector di oggetti di questa classe, fin qui tutto ok. Ora vorrei usare i metodi contains() removaAll(collection) e retainAll(collection) che per quel che ho capito usano il metodo equals per stabilire se 2 oggetti sono uguali. Vorrei che usassero un mio metodo equals . Come devo fare? Sono abbastanza sicuro che la cosa sia fattibile solo non so come.
Gazie in anticipo.
Ultima modifica di Kamahl il sabato 20 settembre 2008, 11:21, modificato 1 volta in totale.
-
misterxxitalia
- Scoppiettante Seguace

- Messaggi: 838
- Iscrizione: domenica 11 marzo 2007, 22:15
Re: [Java] Vector e metodo equals
questo è un esempio di metodo equals che ho usato qualche tempo fa:
in pratica l'ho riscritto adattandolo alle mie esigenze!naturalmente quando vuoi invocare questo metodo devi puntare alla classe dove si trova!ciao!
Codice: Seleziona tutto
ublic boolean equals(Object obj) {
if (obj instanceof Rubrica) {
Rubrica r = (Rubrica ) obj;
if (r.getNome().equals(getNome()) && r.getCognome().equals(getCognome())
&&r.getIndirizzo().equals(getIndirizzo())&&r.getTelefono().equals(getTelefono())&&r.getAffinita().equals(getAffinita())
) return true;
return false;
}else return false;
}Re: [Java] Vector e metodo equals
Devi estendere la classe Vector e fare l'ovveride del metodo.Kamahl ha scritto: Premetto che sono un neofita di java.
Ho realizzato una mia classe, e mi trovo a dover utilizzare vei vector di oggetti di questa classe, fin qui tutto ok. Ora vorrei usare i metodi contains() removaAll(collection) e retainAll(collection) che per quel che ho capito usano il metodo equals per stabilire se 2 oggetti sono uguali. Vorrei che usassero un mio metodo equals . Come devo fare? Sono abbastanza sicuro che la cosa sia fattibile solo non so come.
Gazie in anticipo.
Così:
Codice: Seleziona tutto
public class MyVector extends Vector{
public MyVector(){
super();
}
@Override
public boolean equals(Object o){
//Tuo codice
}
}Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Re: [Java] Vector e metodo equals
Ok tutto chiaro, Grazie 1000.
- IppatsuMan
- Prode Principiante
- Messaggi: 199
- Iscrizione: mercoledì 14 febbraio 2007, 1:31
- Contatti:
Re: [Java] Vector e metodo equals[Risolto]
No, non va bene. Non devi effettuare l'override del metodo equals di Vector, ma del metodo equals degli oggetti contenuti nel Vector. I metodi contains removaAll e retainAll si occuperanno di richiamare al loro interno il metodo equals dei tuoi oggetti. Questo perché il tuo obiettivo e decidere se due oggetti contenuti nel Vector sono uguali, e non se sono uguali i due Vector.Zoff ha scritto: Devi estendere la classe Vector e fare l'ovveride del metodo.
ハッカー
Re: [Java] Vector e metodo equals[Risolto]
Giusto ho interpretato male le indicazioni iniziali :-[ :-[ :-[IppatsuMan ha scritto:No, non va bene. Non devi effettuare l'override del metodo equals di Vector, ma del metodo equals degli oggetti contenuti nel Vector. I metodi contains removaAll e retainAll si occuperanno di richiamare al loro interno il metodo equals dei tuoi oggetti. Questo perché il tuo obiettivo e decidere se due oggetti contenuti nel Vector sono uguali, e non se sono uguali i due Vector.Zoff ha scritto: Devi estendere la classe Vector e fare l'ovveride del metodo.
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Chi c’è in linea
Visualizzano questa sezione: 0 utenti iscritti e 2 ospiti
