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 :

problème de classe en compilation


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 40
    Par défaut problème de classe en compilation
    Bonsoir,

    J'ai une erreur que je ne trouve pas : voici le code

    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
     
    class exo84 {
        static int cases (char[] a1, char carac ) {
    	int nombre;
    	 for(int i=0; i<a1.length; i++){
    	   nombre = nombre +1;
    	 Terminal.ecrireStringln("le tableau contient " + nombre + " de cases ");
    	 nombre = Terminal.lireInt();
    	 }
    	 }
     
    	 static int caracteres (char[]a1, char carac ){
    	 int res = 0;
    	  Terminal.ecrireStringln("entrer un caracteres ");
    	 carac = Terminal.lireChar();
    	 for(int i=1; i<a1.length; i++){
    	 res = res + i;
    	 }
    	 }
     
    	 static int nbrecaracteres (char[]a1, char carac){
    	 int res = 0; 
    	 for(int i=1; i<a1.length; i++){
    	 if( res == a1[].length){
    	 res = res +i;
    	 Terminal.ecrireStringln("le caractere se trouve dans le tableau");
     
    	 Terminal.ecrireStringln("il se trouve " + res + "nombre de caracteres");
    	 }else{
    	 Terminal.ecrireStringln("il n'y a pas de caracteres");
    	 }
    	 }
    	 return res;
    		}
     
      public static void main (String [] args) {
    	char [] t1 = {'a', 'b', 'c'} ;
    	char carac = 'x';
    	int res;
    	Terminal.ecrireStringln(" le tableau contient " + (cases ));
    	Terminal.ecrireStringln(" le tableau contient " + (caracteres(carac)));
    	Terminal.ecrireStringln(" il y a " + res + " caracteres  dans la tableau " + (nbrecaracteres));
    }
    }
     
     
    //erreurs de compilations
    le compilateur m'indique

    C:\Documents and Settings\rohmer\exo84.java:23: class expected
    if( res == a1[].length){
    ^
    1 error

    quesaco ??

  2. #2
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Par défaut
    il suffit de faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if( res == a1.length){
    on enleve les crochets

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 40
    Par défaut
    Pour terminer on me signale cette erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    Terminal.ecrireStringln(" le tableau contient " + (caracteres(caract)));
    C:\Documents and Settings\rohmer\exo84.java:40: caracteres(char[],char) in exo84
    cannot be applied to (char)
    Terminal.ecrireStringln(" le tableau contient " + (caracteres(caract)));

    ^
    1 error

    comment dois je ecrire cette ligne ?

  4. #4
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Par défaut
    Citation Envoyé par stephcast Voir le message
    Pour terminer on me signale cette erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    Terminal.ecrireStringln(" le tableau contient " + (caracteres(caract)));
    C:\Documents and Settings\rohmer\exo84.java:40: caracteres(char[],char) in exo84
    cannot be applied to (char)
    Terminal.ecrireStringln(" le tableau contient " + (caracteres(caract)));

    ^
    1 error

    comment dois je ecrire cette ligne ?
    As tu vu le prototype de la methode caracteres? elle attend deux parametres : un tableau de caracteres et un caractere. Tu l'appelle on lui fournissant un seul parametre de type caractere.

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 40
    Par défaut
    l'erreur n'est pas celle ci.
    meme en mettant 2 parametres lors de l'appel de la methode, l'erreur revient.
    Comment faire lorsque l'on veut seulement afficher un parametre d'une methode et non les 2 ?

  6. #6
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Par défaut
    Citation Envoyé par stephcast Voir le message
    l'erreur n'est pas celle ci.
    meme en mettant 2 parametres lors de l'appel de la methode, l'erreur revient.
    Comment faire lorsque l'on veut seulement afficher un parametre d'une methode et non les 2 ?
    A moins de surdefinir la methode, je ne vois pas comment tu pourais y arriver. Les parametres avec valeur initiale comme en c++ ou ada n'existe pas en java à ce que je sache.

    Autre chose, ton programme contient plusieurs erreurs, par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Terminal.ecrireStringln(" le tableau contient " + (cases ));
    Terminal.ecrireStringln(" il y a " + res + " caracteres  dans la tableau " + (nbrecaracteres));
    cases est une fonction, tu l'utilise comme une variable. Meme chose pour nbrecaracteres. res est un int non encore initialisé.

    Aussi, la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    static int caracteres (char[]a1, char carac ){
    	 int res = 0;
    	  Terminal.ecrireStringln("entrer un caracteres ");
    	 carac = Terminal.lireChar();
    	 for(int i=1; i<a1.length; i++){
    	 res = res + i;
    	 }
    	 }
    ne retourne aucune valeur, alors qu'elle devait retournée un int. Et que devrait faire cette fonction en réalité?

Discussions similaires

  1. Problème lors de la compilation d'une classe
    Par gjava dans le forum JavaFX
    Réponses: 1
    Dernier message: 09/10/2012, 01h04
  2. Question sur les classes (car problème lors de la compilation)
    Par beegees dans le forum Débuter avec Java
    Réponses: 9
    Dernier message: 09/10/2009, 17h23
  3. Problème de classe
    Par DeusXL dans le forum DirectX
    Réponses: 15
    Dernier message: 04/12/2005, 14h37
  4. [CDT] problème de build et compil (make -k)
    Par Prodejeu dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 02/11/2004, 23h18
  5. [Linux]Problème System.out.println + compiler
    Par Dnx dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 21/09/2004, 22h05

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