不用scriptEnginemanager 判断字符串”1===1”的结果
时间: 2024-09-23 07:11:09 浏览: 30
利用ScriptEngineManager实现字符串公式灵活计算的方法
5星 · 资源好评率100%
如果你不想直接使用`ScriptEngineManager`和`ScriptEngine`,并且只需要简单地判断字符串"1===1"这样的JavaScript比较表达式的真假,你可以利用` Nashorn JavaScript引擎`(如果它已经作为Java的一部分),或者使用第三方库如` Rhino` 或者 `Jsoup` 的JavaScript解析功能。
这里是一个简单的例子,假设你已经有了`Nashorn`引擎,可以这样做:
```java
import javax.script.ScriptEngineManager;
import javax.script.ScriptEngine;
import javax.script.Invocable;
public class Main {
public static void main(String[] args) throws Exception {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine nashornEngine = manager.getEngineByName("nashorn"); // 使用Nashorn引擎
if (nashornEngine != null) {
Object result = nashornEngine.eval("1 === 1");
if (result instanceof Boolean && ((Boolean) result).booleanValue()) {
System.out.println("字符串 '1===1' 的结果是真");
} else {
System.out.println("字符串 '1===1' 的结果是假");
}
} else {
System.out.println("Nashorn引擎未找到");
}
}
}
```
请注意,这个例子假设Nashorn引擎已经被添加到你的项目路径中,并且在Java平台上可用。如果没有Nashorn,那么你可能需要查找其他支持类似功能的库。
阅读全文