étendre la classe abstraite AbstractList

Résolu
jiriki Messages postés 7 Date d'inscription lundi 24 mars 2003 Statut Membre Dernière intervention 21 mars 2006 - 21 mars 2006 à 13:57
cs_valckar Messages postés 34 Date d'inscription jeudi 16 mars 2006 Statut Membre Dernière intervention 30 juin 2006 - 22 mars 2006 à 09:39
Bonjour à tous,

Comment dois-je faire pour étendre la classe abstraite AbstractList.
Mon code, ci-dessous, fonctionne mais ne doit pas être entièrement correct car je ne sais pas faire un remove d'un objet de la collection.

import java.util.AbstractList;
import java.util.ArrayList;

public class ResultObj extends AbstractList {
ArrayList list = new ArrayList();

public Object get(int index) {
return list.get(index);
}

public int size() {
return list.size();
}

public void add(int index, Object o){
list.add(index, o);
}

}

merci d'avance,
Jiriki

1 réponse

cs_valckar Messages postés 34 Date d'inscription jeudi 16 mars 2006 Statut Membre Dernière intervention 30 juin 2006
22 mars 2006 à 09:39
Salut,



Normallement le remove devrais fonctioner. S'il ne marche pas s'est que
l'objet que tu veux supprimer n'est pas equals() à un objet de la list.
N'oublie pas que par défaut la méthode equals() utilise la méthode
hashCode() d'Object.



Sinon j'aurais écrit la classe de cette façon :



public class test1<T> extends AbstractList<T>

{



ArrayList<T> list = new ArrayList<T>();



@Override

public T get(int index)

{

return list.get(index);

}



@Override

public int size()

{

return list.size();

}



@Override

public void add(int index, T o)

{

list.add(index, o);

}

}
3
Rejoignez-nous