Test whether a variable equals either one of two values

后端 未结 7 1223
别那么骄傲
别那么骄傲 2020-12-13 08:31

I want to test whether a equals 1 or 2

I could do

a == 1 || a == 2

but this requires repeating

7条回答
  •  执念已碎
    2020-12-13 08:49

    I don't know in what context you're using this in, but if it fits into a switch statement you can do:

    a = 1
    case a
    when 1, 2
      puts a
    end
    

    Some other benefits is that when uses the case equality === operator, so if you want, you can override that method for different behavior. Another, is that you can also use ranges with it too if that meets your use case:

    when 1..5, 7, 10
    

提交回复
热议问题