在Kotlin中评估字符串表达式而无需使用脚本引擎

时间:2019-11-27 13:05:15

标签: java android string kotlin expression

我想不使用脚本引擎来评估字符串表达式:

字符串表达式可以像这样:

  

“(((true &&(!false)|| true)&& true)&& true”

任何人都不知道如何使用Kotlin在android中完成

谢谢

1 个答案:

答案 0 :(得分:0)

我知道我的回答对您的字符串表达式包含true,false,&&,|| 、!的情况没有帮助。和()。但是对于那些想要评估数学表达式的人,我发现this library可以处理几乎所有的数学运算符。

将其添加到您的项目中并以这种方式使用

    // In root build.gradle
    repositories {
    maven {
        url  "https://dl.bintray.com/kaendagger/KParser"
          }
    } 

    //Add in the dependencies
    dependencies{
     implementation 'io.kaen.dagger:KParser-jvm:0.1.1'
    }

然后在您的代码中您可以执行以下操作

val parser = ExpressionParser()
val result = parser.evaluate("5+1+cos(PI)-2*2/4")
println(result)