下面是我的代码:
def readln = javax.swing.JOptionsPane.&showInputDialog
def env = readln 'Which environment you want to test'
我输入的内容为syst
我正在比较这是我在做什么
if("$env".equalsIgnoreCase("syst")){
some code
}
还尝试了许多其他比较方式,例如
if($env.equalsIgnoreCase("syst"))
if(env.equalsUIgnoreCase("syst"))
if("${'env'}".equalsIgnoreCase("syst"))
但以上方法均无效,不满足条件。如何将声明的字符串与从对话框输入的字符串进行比较?
答案 0 :(得分:1)
首先-类名JOptionsPane
是错误的(它是JOptionPane
-没有s
)
下面是工作代码。
您可以从groovy控制台运行它。
import javax.swing.JOptionPane
def readln = JOptionPane.&showInputDialog
def env = readln 'Which environment you want to test'
if(env=='syst'){
println "EQUALS"
}
if('syst'.equalsIgnoreCase(env)){
println "EQUALS equalsIgnoreCase 1"
}
if(env.equalsIgnoreCase('syst')){
println "EQUALS equalsIgnoreCase 2"
}
if("${env}".equalsIgnoreCase('syst')){
println "EQUALS equalsIgnoreCase 3"
}
所有4个比较都可以正常工作。
如果您想比较忽略大小写,最好使用'syst'.equalsIgnoreCase(env)
。
因为此时env
可能为空
答案 1 :(得分:0)
尝试将其直接扩展为-“ $ {env}”