Supprimer De Tableau

Résolu
MtrMahran Messages postés 9 Statut Membre -  
MtrMahran Messages postés 9 Statut Membre -
Bonjour,
je suis en train de développer en java une application de Gestion de Pharmacie je me suis demandé de créer dans la classe Pharmacie une méthode "suppression" d'un médicament selon une référence donné en paramètre
alors j'ai fait comme ça
public void suppression(int r)
{
for(int i=0;i<tabMed.length;i++)
{
if (tabMed[i].reference==r)
{
for(int j=i;j<tabMed.length-1;j++)
{
tabMed[j]=tabMed[j+1];
}
}

}
}
ça marche mais la dernière case ne se supprime pas
regardez l'affichage après la suppression de médicament de référence 4434
http://nimga.fr/f/KdCRT.jpg
SVP Comment Faire pour dépasser cette erreur?
NB c'est un tableau d'objet
A voir également:

2 réponses

KX Messages postés 19031 Statut Modérateur 3 020
 
Tu ne peux pas changer la taille d'un tableau, mais tu peux éventuellement mettre la dernière case avec une valeur "null" et modifier ta méthode d'affichage pour ne pas que les valeurs null soient affichées...

public void suppression(int r) 
{
    for(int i=0, n=tabMed.length; i<n; i++)
    {
        if (tabMed[i]!=null && tabMed[i].reference==r)
        {
            for(int j=i; j<n-1; j++)
                tabMed[j]=tabMed[j+1];
            
            tabMed[n-1]=null;
        }
    }
}

public void affichage()
{
    for (Object med : tabMed)
        if (med!=null)
            System.out.println(med);
}
2
MtrMahran Messages postés 9 Statut Membre
 
Merci Beaucoup cher Ami ça m'a aidé
Merci infiniment
0
MtrMahran Messages postés 9 Statut Membre
 
Merci Beaucoup cher Ami ça m'a aidé
c'est résolu (y)
0