IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

comment proceder ?


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Tora21
    Homme Profil pro
    Développeur("Java"); //Débutant
    Inscrit en
    Mai 2011
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur("Java"); //Débutant

    Informations forums :
    Inscription : Mai 2011
    Messages : 140
    Par défaut comment proceder ?
    Salut à tous.

    Voici mon problème:
    J'ai une classe "ConvertTime" qui contient une méthode, "public double calculMoiCa(String valeur)", dans cette classe il y a 6 "private double taux", d'une valeur respective de 10, 100, 1000, 0.1, 0.01, 0.001 et il y a une variable "private double resultat".

    Pour le moment la méthode renvoi l'objet resultatTemps.

    Mon problème est que je souhaite obtenir le résultat de 6 calculs différents en retour, et cela dans le but de remplir par la suite 6 JLabel. Je ne maîtrise pas trop les vecteur ou les itérations, je suis ouvert à toutes les techniques tans qu'on me les expliques bien. Je ne demande à personne de faire le code, juste des conseils, et je viendrai poster si je ne m'en sort pas.

    Voici le code nécéssaire pour que vous compreniez mon problème:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    public class ConvertTime
    {
    	private double	instantT;
    	private double	resultatTemps;
    	private double	taux1	= 10;
    	private double 	taux2	= 100;
    	private double taux3 = 1000;
    	private double taux4 = 0.1;
    	private double taux5 = 0.01;
    	private double taux6 = 0.001;
     
    	public ConvertTime ()
    	{
    	}
     
    	public double calculMoiCa (String valeur)
    	{
    		try
    		{
    			// un petit test (expression régulière pour tester si la chaîne est
    			// vraiment un nombre).
    			this.instantT = Double.parseDouble (valeur);
    			this.resultatTemps = this.instantT * this.taux1;
     
    		}
    		catch (NumberFormatException aNFE)
    		{
    			JOptionPane.showMessageDialog (null, "Erreur de format: " + aNFE.getMessage (), "une erreur de saisie",
    					JOptionPane.ERROR_MESSAGE);
    		}
    		return resultatTemps;
    	}
    }
    puis ma classe ou est renvoyer la donnée:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    public class GestionnaireAction implements ActionListener
    	{
    		public void actionPerformed (ActionEvent aAE)
    		{
    			if (aAE.getSource () == unPanelBouton.getBoutConver ())
    			{
    				if (unPanellabel.getChampDeSaisie ().getText ().equals (""))
    				{
    					JOptionPane.showMessageDialog (null, "Veuillez saisir une valeur à convertir", "Erreur de saisie",
    							JOptionPane.OK_OPTION);
    				}
    				else
    				{
    					convertTimeRecupere = new ConvertTime ();
    					String aConvertir = unPanellabel.getChampDeSaisie ().getText ();
    					Double resultat = convertTimeRecupere.calculMoiCa (aConvertir);
    					unPanellabel.getLabelResult1 ().setText (resultat.toString ());
    				}
    			}
    			if (aAE.getSource () == unPanelBouton.getBoutQuit ())
    			{
    				System.exit (0);
    			}
    		}
    	}

  2. #2
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Par défaut
    Au choix :
    - soit tu crée une classe "Résultat" que tu instancies au début du calcul et que tu remplis au fur et a mesure puis que tu retournes et que tu traites
    - soit tu les mets dans un conteneur (ArrayList par exemple) et tu les lis et traite un à un, mais ce sera un peu plus casse-gueule je pense.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  3. #3
    Membre confirmé Avatar de Tora21
    Homme Profil pro
    Développeur("Java"); //Débutant
    Inscrit en
    Mai 2011
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur("Java"); //Débutant

    Informations forums :
    Inscription : Mai 2011
    Messages : 140
    Par défaut
    Je vais alors opter pour la solution de la classe résultat mais, je ne sais pas trop comment m'y prendre, pourrais-tu développer un peu ta solution ?

    Le problème est que dans ma classe ConvertTime, j'ai instancié la classe Résultat, mais il ne considère pas mes getter comme des variable et ne veut pas leur assigné de valeur.

    Sinon quelqu'un aurait-il une autre solution?

  4. #4
    Membre expérimenté Avatar de ZnhaarX
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 146
    Par défaut
    Citation Envoyé par Tora21 Voir le message
    Le problème est que dans ma classe ConvertTime, j'ai instancié la classe Résultat, mais il ne considère pas mes getter comme des variable et ne veut pas leur assigné de valeur.
    Je comprends pas très bien l'histoire de "assigner des valeurs aux getters".
    Un Getter comme son nom l'indique récupère la valeur de tes attributs privés. Pour "assigner" des valeurs il faut utiliser les Setters.

    Quoiqu'il en soit, par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    public class Results {
     
    	private double result1;
    	private double result2;
    	private double result3;
     
    	public void setResult1(double result1) {
    		this.result1 = result1;
    	}
    	public double getResult1() {
    		return result1;
    	}
    	public void setResult2(double result2) {
    		this.result2 = result2;
    	}
    	public double getResult2() {
    		return result2;
    	}
    	public void setResult3(double result3) {
    		this.result3 = result3;
    	}
    	public double getResult3() {
    		return result3;
    	}
    }
    Donc tu instancies ta classe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Results result = new Results();
    Après pour assigner une valeur à un résultat tu fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    result.setResult1(5.3);
    Et pour obtenir le résultat (que tu viens d'assigner):
    Quoiqu'il en soit, pour moi, c'est la meilleure solution; ou du moins la solution la plus propre. Si t'as d'autres résultats à faire passer à l'avenir, tu rajoutes juste un attribut et ses getters/setters et c'est bon. Pas besoin de te pré-occuper d'ou est placé ton résultat dans ton ArrayList ou autre.

  5. #5
    Membre confirmé Avatar de Tora21
    Homme Profil pro
    Développeur("Java"); //Débutant
    Inscrit en
    Mai 2011
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur("Java"); //Débutant

    Informations forums :
    Inscription : Mai 2011
    Messages : 140
    Par défaut
    Merci je vais tester un truc dans ce genre, mais pour les getters je ne m'en sers aussi pour les remplir d'une nouvelle valeur du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    this.......getBlabla().setText(:))
    et c'est peut-être pour ca que parfois j'ai des problème, peut-être parce que je ne me sert pas des setter.

    je go tester.

  6. #6
    Membre expérimenté Avatar de ZnhaarX
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 146
    Par défaut
    Heu bah les Setters tu es obligé de les utiliser si tu veux récupérer quelque chose avec tes getter
    Tu noteras que dans la classe que je t'ai donné tu n'as aucun moyen d'assigner des valeurs à tes attributs sauf en utilisant tes Setters (vu qu'il n'y a pas de constructeur avec paramètres ici).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment Proceder Pour Qu'une Gpo Installe Automatiquement Un Logiciel
    Par gaara69620 dans le forum Windows Serveur
    Réponses: 4
    Dernier message: 10/01/2008, 08h18
  2. Réponses: 4
    Dernier message: 22/05/2006, 14h01
  3. [Deploiement 1.xxx vers 2.0] Comment proceder ?
    Par Seb.26 dans le forum Framework .NET
    Réponses: 5
    Dernier message: 24/04/2006, 12h13
  4. [Erreur] SQL1040N: comment proceder ?
    Par FzF dans le forum DB2
    Réponses: 3
    Dernier message: 12/04/2006, 09h39
  5. [Optimisation]Comment proceder pour une BDD très importante?
    Par XTopheBde dans le forum Décisions SGBD
    Réponses: 8
    Dernier message: 04/01/2006, 13h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo