Concernant une méthode "setRue"

Résolu/Fermé
Naraka77 Messages postés 10 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 janvier 2014 - 9 janv. 2014 à 16:31
Naraka77 Messages postés 10 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 janvier 2014 - 9 janv. 2014 à 17:55
Bonjour à tous,

Je suis en train d'écrire un petit programme en Java et il se trouve que j'ai un soucis pour "modifier" une valeur.

Mon programme est une gestion assez "basique" d'un parking de voiture. Dans ce projet, j'ai la possibilité de demandé a l'utilisateur de créer un nouveau client, de consulter l'état du parking, de modifier un client ect....

Mon problème est situé au niveau de la modification d'un client.

Voilà comment est définit ma classe Proprietaire :
public class Proprietaire {
	int id;
	String nom;
	String prenom;
	String email;
    String telephon;
    Adresse adresse;
    Vehicule vehicule;
    
	public Proprietaire(int id, String nom, String prenom, String email,
			String telephon, Adresse adresse, Vehicule vehicule) {
		super();
		this.id = id;
		this.nom = nom;
		this.prenom = prenom;
		this.email = email;
		this.telephon = telephon;
		this.adresse = adresse;
		this.vehicule = vehicule;
	}
...
//Il y a en plus les getters et les setters ect...
}


Et voici maintenant ma classe Adresse :
class Adresse
{
	int num_rue;
	String rue;
	String ville;
	int code_postal;
	
	
	public Adresse(int num_rue, String rue, String ville, int code_postal) {
		super();
		this.num_rue = num_rue;
		this.rue = rue;
		this.ville = ville;
		this.code_postal = code_postal;
	}
...
//Même chose que précédemment.


Enfin, voilà mon problème, dans la partie du code qui va suivre, je modifie un client ! Ceci se fonctionne correctement pour tout ce qui est nom, prenom, email, telephon, mais dès que je souhaite modifier l'adresse, je n'y arrive pas.

[...]
else if ( modifier_user1 == 3)
					 {
						 System.out.println("Entre la nouvelle adresse email : ");
							new_user = scanner.next();
							p.setEmail(new_user); //Je change l'email avec l'email tapé par l'utilisateur...
							liste_p.addProprio(p);
							liste_p.removePropio(modifier_user-1);
							save(liste_p);
					 }
					 else if ( modifier_user1 == 4)
					 {
						 System.out.println("Entre le nouveau numéro de téléphone : ");
							new_user = scanner.next();
							p.setTelephon(new_user); //Je change le numéro de telephone avec celui entré par l'utilisateur...
							liste_p.addProprio(p);
							liste_p.removePropio(modifier_user-1);
							save(liste_p);
					 }
else if ( modifier_user1 == 5)
					 { // Pas la moindre idée de comment utiliser le setter de la classe adresse pour changer le numéro de la rue (par exemple) sachant qu'il est définit de la façon suivante :
public void setNum_rue(int num_rue) {
		this.num_rue = num_rue;
	}
					 }



J'espère que vous allez pouvoir m'aider !

En vous remerciant d'avance.

Cordialement,

Naraka

2 réponses

irmeche Messages postés 71 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 18 juillet 2014 17
9 janv. 2014 à 17:40
comme tu fais pour modifier l'email:

      p.setEmail(new_user);


tu fais de même pour tous les champs de l'adresse:

      p.getAdresse().setNum_rue(new_num_rue);
1
Naraka77 Messages postés 10 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 janvier 2014
9 janv. 2014 à 17:55
Merci infiniment pour ta réponse, je comprends mieux pourquoi ça ne marchait pas, j'avais oublié de mettre nextInt()...
0