Java 将字符串转换为数学对象

Java 将字符串转换为数学对象,java,string,Java,String,我不知道这是否可能。我所处的情况是,输入将如下所示: [int, String, int] 其中字符串为“”、“=”、“=” 有没有办法实现一个方法来帮助我在没有多个if语句的情况下比较两个int与string compare参数的关系 我希望我已经解释清楚了 谢谢。无法像Java源代码中的运算符一样应用字符串。您必须测试每个字符串值并进行适当的测试 public boolean eval(int arg1, String op, int arg2) { if (op.equals("

我不知道这是否可能。我所处的情况是,输入将如下所示:

[int, String, int]
其中字符串为“”、“=”、“=”

有没有办法实现一个方法来帮助我在没有多个if语句的情况下比较两个int与string compare参数的关系

我希望我已经解释清楚了


谢谢。

无法像Java源代码中的运算符一样应用字符串。您必须测试每个字符串值并进行适当的测试

public boolean eval(int arg1, String op, int arg2) {
    if (op.equals("<")) {
        return arg1 < arg2;
    } else if (op.equals("<=")) {
        return arg1 <= arg2;
    } else . . .
}
public boolean eval(int arg1,String op,int arg2){

if(op.equals(“无法将字符串当作Java源代码中的运算符来应用。您必须测试每个字符串值并进行适当的测试

public boolean eval(int arg1, String op, int arg2) {
    if (op.equals("<")) {
        return arg1 < arg2;
    } else if (op.equals("<=")) {
        return arg1 <= arg2;
    } else . . .
}
public boolean eval(int arg1,String op,int arg2){

if(op.equals)(“检查下面的链接,看看它是否也会帮助一个类似的线程。检查下面的链接,看看它是否也会帮助一个类似的线程。谢谢你。你有没有理由说为什么脚本引擎是过度杀戮的?它看起来确实干净多了。“没有办法像Java源代码中的运算符一样应用字符串。”-事实上,有。这将使用来计算代码字符串(在运行时编译和执行新代码).___;但请注意:出于非常明显的原因,这是非常不合适的,而且远远超过了杀伤力。@isal-在幕后,您将在Java中加载一个全新的语言解释器。它表面上看起来更干净,但就像命令一个营去杀一只苍蝇。请记住,(作为CM链接的帖子中的一条评论)您将运行脚本,而不仅仅是计算表达式“然后你会得到42。如果你想要看起来干净的东西,并且至少与你的问题相称,那么尝试一下,而不是
ScriptEngine
@TheLima-Yeesh!只是…Yeesh。我承认我没有想到这一点。你必须将表达式打包成某种语句(可能是作为某个静态变量声明的初始值设定项)并将其打包到一个类中。然后,您将拥有编译器可能能够处理的编译单元。然后,当然,您必须加载生成的类文件并访问该值(当然,使用反射)。确实远远超过了过度杀戮。谢谢。你有没有理由说为什么ScriptEngine过度杀戮?它看起来确实干净多了。“没有办法像在Java源代码中使用运算符一样应用字符串。”-事实上,有。这将是使用计算字符串代码(在运行时编译和执行新代码).___;但请注意:出于非常明显的原因,这是非常不合适的,而且远远超过了杀伤力。@isal-在幕后,您将在Java中加载一个全新的语言解释器。它表面上看起来更干净,但就像命令一个营去杀一只苍蝇。请记住,(作为CM链接的帖子中的评论之一)您将运行脚本,而不仅仅是计算表达式。例如,传递字符串“8;40+2”如果你想要的东西看起来干净,至少与你的问题相符,试着用
ScriptEngine
@TheLima-Yeesh!只是…Yeesh。我承认我没有想到。你必须把表达式打包成某种语句(可能是作为某个静态变量声明的初始值设定项)并将其打包到一个类中。然后,您将拥有一个编译器可能能够处理的编译单元。然后,当然,您必须加载生成的类文件并访问该值(当然,使用反射)。事实上,这远远超过了过度杀戮。