java - 将命令行参数评估为 boolean 表达式

标签 java string if-statement boolean evaluate

我试图获取一个字符串,作为参数传递,并在 if 条件语句中将其作为 boolean 表达式求值。例如,用户像 $ java MyProgram x==y 一样调用 MyProgram。


示例程序

定义变量:

int x;
int y;

boolean 表达式参数:

String stringToEval = args[0];

用用户表达式控制程序执行:

if (stringToEval) {
    ...
}

最佳答案

您需要使用某种形式的表达式解析器来解析 args[0] 中的值,并创建可应用于 x 的表达式>y。您也许可以使用类似 Janino 的东西, JEXLJeval去做这个。如果输入定义明确,您也可以自己编写一个小型解析器。

关于java - 将命令行参数评估为 boolean 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19704906/

相关文章:

python - 为什么这个while循环在if语句下不执行?

ios - 在 if 语句中声明变量时使用未解析的标识符

java - 无法解析日期

python - Python 如何从 argparse 填充字符串

java - JDBC嵌入式Derby : No suitable driver found

javascript - 从 id 属性获取最后一个字符

python - 在 Pandas 列中搜索其他列中的子字符串

c# - 减少 if else 系列在 windows 窗体 checkedlistbox c#

多边形内/多边形上的 JavaFX 文本

java - 使用maven同时启动两个spring boot应用程序