如何在groovy switch语句中放置多个变量?

thigvfpy  于 2022-12-26  发布在  其他
关注(0)|答案(2)|浏览(160)

如何在groovy switch语句中放置多个变量?例如,如果任何变量为false,它将打印“false”或打印“true”。

a=true
b=true
c=true
switch(true)
{
 case(a==true && b==true && c==true)
   println("true")
   break
 case(a==false || b==false || c==false)
   println("false")
   break   
}
11dmarpk

11dmarpk1#

switch语句用于针对多个条件测试 * 单个 * 值。
虽然switch语句是versatile,但在测试多个变量时,简单的旧if/else更合适:

if( a && b && c ) { println 'true' }
else              { println 'false' }

也可以使用in(成员资格)运算符。它测试LHS操作数(值)是否包含在RHS操作数(集合)中。

if( false in [a,b,c] ) { println 'false' }
else                   { println 'true' }
1szpjjfi

1szpjjfi2#

你可以像下面这样做,创建一个结合了三个变量的函数,然后打开它,但是我不推荐这样做; combination函数是一个不必要的新元素,很容易出错。最好使用一系列if/else语句。

a = true
b = true
c = true

switch(a.toString() + b.toString() + c.toString())
{
   case "truetruetrue":
     println("true")
     break
   case "falsefalsefalse":
     println("false")
     break   
   default:
     println("a different combination")
     break
}

The above in Groovy Web Console

相关问题