计算字符串时答案不正确
Incorrect Answers when evaluating a String
我的代码如下所示:
ScriptEngineManager factory = new ScriptEngineManager();
ScriptEngine engine = factory.getEngineByName("JavaScript");
int x = 10;
engine.eval("x =" + x);
System.out.println((Boolean) engine.eval("x < 5"));
System.out.println((Boolean) engine.eval("2 < x < 5"));
第一个 SOP 按预期打印为假,但第二个 SOP 打印为真。当我将变量与两个值进行比较时,它不会给出正确的结果。它给出真,即使一半的条件是真的。有什么解决方法吗?请指教。谢谢。
2 < x < 5
不会做你认为它做的事情。 它的评估如下:
2 < x < 5
(2 < x) < 5
(2 < 10) < 5
true < 5
1 < 5
true
请尝试(2 < x) && (x < 5)
。
将我的评论转换为 anwser
2 < x < 5 => (2 < 10 ) < 5 => (true) < 5 => 1 < 5 => true
不,它实际上产生了正确的结果。您的表达式计算方式如下:
- 2
真 - 真<5 => 1 <5(类型强制)
- 1 <5 => 真
- 真
若要变通方法,请尝试指定必须同时满足这两个条件。
System.out.println((Boolean) engine.eval("2
相关文章:
- Jquery菜单操作不稳定,定位不正确,存在一般错误
- Amazon S3 REST API大小不正确
- Javascript Reg Exp不正确匹配
- DIV并排,位置不正确
- 仅在IE中,javascript中的时区名称不正确
- 注意:wp_enqueue_script调用不正确.在 Wordpress 调试模式下
- 你能解释一下为什么这个javascript不正确吗
- 从int值来看,Javascript日期不正确
- jQuery-迭代不正确?(太长,无法执行)
- 字符串解析不正确
- 日历显示不正确
- 引导程序下拉列表显示不正确
- Node.js:多个然后'It’执行顺序不正确
- 为什么不是't我的javascript向Project Euler返回正确答案's排名第一
- 计算字符串时答案不正确
- jQuery间隔脉冲指定一个新的随机数,而不是检查正确答案
- 如果答案不正确,我如何循环回提示
- Javascript正确答案计数不工作
- 乘法答案不正确
- 谷歌地图渲染不正确,无法用已经给出的答案解决这个问题