String text="1*3+6",不进行校验检查,如何得到这个表达式的值?

chinadrencher 2002-02-20 10:25:51
求问
...全文
10 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Saintking 2002-02-21
在java中好像是不提供将字符串解析为表达式的函数的。
所以,做一个简单的表达式解析程序吧。不难的。
回复
pengji 2002-02-21
一个个CHAR读,然后判断是不是操作符号,如果不是转换成数字,进行运算!
回复
skyyoung 2002-02-20
JAR Java Archive
jep212.jar (Version 2.12)
http://jep.sourceforge.net/download/jep212.jar
Follow the steps on documentation page for installation.

Source Code (including JavaCC grammar)
jep212src.zip (Version 2.12)
http://jep.sourceforge.net/download/jep212src.zip
JavaCC grammar
Parser.jjt (Version 2.12)
http://jep.sourceforge.net/download/Parser.jjt
回复
pengji 2002-02-20
自己写个方法!把STRING拆分,再判断所做的运算并运行!
回复
chinadrencher 2002-02-20
这个网站是错的
上不去
回复
cosmo 2002-02-20
http://jep.sourceforge.net/ ??
回复
chinadrencher 2002-02-20
写解释器
太麻烦
现成的那儿有
回复
jimjxr 2002-02-20
Java是要编译的语言,不是脚本语言,所以没有办法直接得到这个表达式的值。你如果真有必要这么做,要么自己写一个解释器,要么找一个现成的用。
回复
chinadrencher 2002-02-20
it is wrong !
how can i get the value ?
help me
回复
chinadrencher 2002-02-20
Integer value=String.valueOf(text);
text is a object


it is correct ?
回复
Brain 2002-02-20
TO:pengji(彭乃超)
讲下思路?我从String拆分后的结果还是String,如何转化为表达式?
TO: skyyoung(路人甲)
THANK U
回复
相关推荐
发帖
非技术区
创建于2007-09-28

2.3w+

社区成员

Java 非技术区
申请成为版主
帖子事件
创建了帖子
2002-02-20 10:25
社区公告
暂无公告