如何在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 }
11dmarpk1#
switch语句用于针对多个条件测试 * 单个 * 值。虽然switch语句是versatile,但在测试多个变量时,简单的旧if/else更合适:
switch
if/else
if( a && b && c ) { println 'true' } else { println 'false' }
也可以使用in(成员资格)运算符。它测试LHS操作数(值)是否包含在RHS操作数(集合)中。
in
if( false in [a,b,c] ) { println 'false' } else { println 'true' }
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
2条答案
按热度按时间11dmarpk1#
switch
语句用于针对多个条件测试 * 单个 * 值。虽然
switch
语句是versatile,但在测试多个变量时,简单的旧if/else
更合适:也可以使用
in
(成员资格)运算符。它测试LHS操作数(值)是否包含在RHS操作数(集合)中。1szpjjfi2#
你可以像下面这样做,创建一个结合了三个变量的函数,然后打开它,但是我不推荐这样做; combination函数是一个不必要的新元素,很容易出错。最好使用一系列if/else语句。
The above in Groovy Web Console