我必须做一些基于某些id的配置,有些配置是相同的,因此我不喜欢为每个配置进行多次切换。
我做了类似的事情:
switch ( sportId )
case [BASEBALL, BASKETBALL]
//do some configuration
如果我把每个盒子分开,开关运行良好,问题是当我把BASEBALL和BASKETBALL放在相同的情况下,因为配置是相同的,这不起作用。
提前致谢。
你在使用枚举吗?以下示例适用于我:
enum Sport {
BASEBALL, BASKETBALL, FOOTBALL, SWIMMING, HOCKEY
}
def set1 = EnumSet.of ( Sport.BASEBALL, Sport.BASKETBALL )
def set2 = EnumSet.of ( Sport.FOOTBALL, Sport.SWIMMING, Sport.HOCKEY )
def sportId = Sport.BASKETBALL
switch ( sportId ) {
case set1:
println 'doing basebase & basketball stuff'
break
case set2:
println 'doing football, swimming & hockey stuff'
break
default:
println 'nothing'
}