Y a t il une fonction eval() en Java?

J'ai une chaîne de caractères comme suit:

String str = "4*5";

Maintenant, je dois obtenir le résultat de 20 par l'aide de la chaîne.

Je sais que dans certaines autres langues de la eval() fonction de ce faire.
Comment puis-je le faire en Java?

  • Je vous suggère d'oublier Java pour cette tâche et l'utilisation Clojure. Clojure permet d'analyser et/ou de compiler le code au moment de l'exécution (et au moment de la compilation) et l'exécuter, et également de générer le code au moment de la compilation ainsi que beaucoup d'autres choses qui sont, par ailleurs, assez habituel dans le monde LISP. Java est trop ennuyeux. Et Clojure pouvez faire tout ce que Java peut, parce qu'il tourne sur la JVM (bien que les autres implémentations existent, trop) Et il peut être mélangé avec Java de façon transparente, même à l'intérieur d'un projet partagé.
  • Ce n'est pas un doublon d'une question demandant aux comment évaluer une expression arithmétique car il en fait la demande, à propos de la fonction eval().
InformationsquelleAutor karthi_ms | 2010-04-09