如何确定在脚本引擎中运行的 Groovy 代码中是否存在变量?

新手上路,请多包涵

如何确定在脚本引擎中运行的 Groovy 代码中是否存在变量?

该变量是通过 ScriptEngine的put方法放置的

原文由 ycomp 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.2k
2 个回答

groovy.lang.Script 中有一个方法 public Binding getBinding()groovy.lang.Binding 有方法 public boolean hasVariable(String name)

因此,您可以简单地检查变量是否存在,例如:

 if (binding.hasVariable('superVariable')) {
// your code here
}

原文由 Aliaksandr Pyrkh 发布,翻译遵循 CC BY-SA 4.0 许可协议

// Example usage: defaultIfInexistent({myVar}, "default")
def defaultIfInexistent(varNameExpr, defaultValue) {
    try {
        varNameExpr()
    } catch (exc) {
        defaultValue
    }
}

原文由 Maximilian Mordig 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题