java条件表达式判断

dang_java 2013-04-25 06:02:26
大家好。

1. String str = "用户名:18,日期:12";
2. String condition = "用户名=18 && 日期=98";

JAVA有没啥子好方案,可以根据1的属性值,去判断2中的表达式是否成立?

前提:属性跟表达式是不确定的,所以我想写一个方法。第一个参数是:属性值,第二个是:表达式。

这样就可以通用的去解决这些了。

但是我不知道如何去判断,请CSDN高手指点!谢谢
...全文
838 14 打赏 收藏 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
zoeg 2013-04-26
  • 打赏
  • 举报
回复
如果是用户名==18&&日期==98,这种写法,你可以直接eval判断其结果,可惜不是
  • 打赏
  • 举报
回复
看你值是怎么获取的,可能没你需求这么麻烦。
dang_java 2013-04-26
  • 打赏
  • 举报
回复
引用 4 楼 CAYU 的回复:
java 内置了javascript语言引擎的,把1的变量变成 var 用户名=18 var 日期=12 然后引入javascript引擎就可以了
哦! 朋友,谢谢你的建议!我立刻去找一下相关的资料,确认是否可以完成!
dang_java 2013-04-26
  • 打赏
  • 举报
回复
引用 3 楼 Inhibitory 的回复:
使用正则把1和2对应的属性都取出来,然后比较一下,都相同说明合法,否则非法
你好 如果是这样的: 1. 用户名=A,密码=B 2. 表达式: (用户名=ADMIN && 密码=ADMIN) 或者 用户名=A 这时候我把属性值取出来,比较是不相同的,但是表达式就是成立的。 也许我们把它想简单了点,不过还是要谢谢你! 期望能够解决这个问题。
dang_java 2013-04-26
  • 打赏
  • 举报
回复
引用 1 楼 rumlee 的回复:
先把str按照json格式解析出来,再把值代入2的表达式中,再进行判断应该就可以了。
值可以用JAVA语言替换到表达式中,重点对String保存的逻辑表达式 怎么样进行判断? 谢谢。
zting125240 2013-04-26
  • 打赏
  • 举报
回复
1.将字符串转成JSON格式。 2.用map以 属性为key 表达式为value
Acesidonu 2013-04-26
  • 打赏
  • 举报
回复
引用 1 楼 rumlee 的回复:
先把str按照json格式解析出来,再把值代入2的表达式中,再进行判断应该就可以了。
++
dang_java 2013-04-26
  • 打赏
  • 举报
回复
谢谢大伙的意见!已经实现了,原理是用JAVA 调用 JS引擎 实现的。 再次感谢各位的宝贵建议! 如果有遇到类似需求的朋友,可以Q我:676562697.
dang_java 2013-04-26
  • 打赏
  • 举报
回复
引用 11 楼 fangmingshijie 的回复:
看你值是怎么获取的,可能没你需求这么麻烦。
谢谢 工作流的节点判断,已经实现了!
jspxnet 2013-04-25
  • 打赏
  • 举报
回复
java 内置了javascript语言引擎的,把1的变量变成 var 用户名=18 var 日期=12 然后引入javascript引擎就可以了
Inhibitory 2013-04-25
  • 打赏
  • 举报
回复
使用正则把1和2对应的属性都取出来,然后比较一下,都相同说明合法,否则非法
mailme525 2013-04-25
  • 打赏
  • 举报
回复
我也碰到这个问题,mark一下
rumlee 2013-04-25
  • 打赏
  • 举报
回复
先把str按照json格式解析出来,再把值代入2的表达式中,再进行判断应该就可以了。

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧