Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1516 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  transfomer String en "bout de code" (parse ???)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

transfomer String en "bout de code" (parse ???)

n°1640780
RV51
Posté le 10-11-2007 à 23:24:48  profilanswer
 

Bonjour, je souhaite réaliser une classe fonction dans laquelle je peux entrer une fonction via la ligne de commande, et ensuite l'évaluer en un point . Le code actuel :

Code :
  1. public class Fonction {
  2. public String fctn;
  3. public Fonction(){
  4.  fctn=es.LireCh("taper la fonction avec x comme variable par exemple 4*x+259" );
  5. }
  6. public double evaluer(double x){
  7.  return Double.parseDouble(fctn);
  8. }
  9. }


es est une classe me permettant de mettre la chaine tapée dans la ligne de commande, par exemple 4*x+259.
ensuite, dans la méthode évaluer, je voudrais donc avoir  return 4*x+259, ce qui serait cohérent puisque x est bien déclaré comme paramètre. Cependant, il me jette un number format exception .
 
Si vous avez des idéees, Merci

mood
Publicité
Posté le 10-11-2007 à 23:24:48  profilanswer
 

n°1643185
la viper
Posté le 15-11-2007 à 10:17:36  profilanswer
 
n°1651410
BifaceMcLe​OD
The HighGlandeur
Posté le 30-11-2007 à 15:46:23  profilanswer
 

Java est un langage compilé, pas interprété. Donc dans le principe, ça n'a pas vraiment de sens du générer du code Java exécutable à la volée.
En pratique, c'est faisable avec la classe com.sun.tools.javac.Main livrée en standard avec le JSDK. Mais c'est lourd, très lourd.
 
De deux choses l'une :
 - soit ce qui t'intéresse, c'est juste évaluer des expressions arithmétiques, et il vaut mieux utiliser une bibliothèque de manipulation formelle d'expressions mathématiques
 - soit tu veux vraiment pouvoir exécuter du code saisi à la volée qui interagit avec ton propre code (pour utiliser voire modifier tes variables Java), et là, tu peux utiliser la classe com.sun.tools.javac.Main pour compiler du code Java.
 
Si tu peux utiliser le JDK6, tu peux aussi utiliser les services du package javax.script, qui permet d'interpréter et exécuter du code JavaScript qui  interagit avec ton code Java (ce qui correspond plus ou moins, en termes de code, à ta demande initiale).


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  transfomer String en "bout de code" (parse ???)

 

Sujets relatifs
Compilation avec Code::Blockscode
Obtenir le code source d'une page externeBug dans mon code...pourquoi ?
Code pour afficher une seule catégorie dans une page wordpresscode vb et page html
pseudo code[HTML/PHP] Erreur simple dans code, mais introuvable
Manipuler une variable Java dans du code JavascriptManipuler un tableau Java dans du code Javascript
Plus de sujets relatifs à : transfomer String en "bout de code" (parse ???)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR