Supprimer De Tableau
Résolu
MtrMahran
Messages postés
6
Date d'inscription
Statut
Membre
Dernière intervention
-
MtrMahran Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
MtrMahran Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
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
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:
- Supprimer De Tableau
- Supprimer rond bleu whatsapp - Guide
- Tableau word - Guide
- Tableau ascii - Guide
- Impossible de supprimer une page word - Guide
- Trier un tableau excel - Guide
2 réponses
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); }
Merci infiniment