我想制作一个if
语句,其中包含or
。我知道你得到像switch
这样的东西。但如果你不想要switch
,你会怎么做?
所以我希望它看起来像下面这样(不起作用):
var number:Int = 1
if number == 1 or 5 {
println("Lucy's Number")
}
答案 0 :(得分:3)
对"或"使用逻辑运算符 || 。
if (number == 1 || number == 5)
{
//do something
}
文档:
答案 1 :(得分:2)
如果要检查很多可能的情况,可以将值分组并过滤它:
if [1, 5, 9, 17, 33].filter({$0 == number}).count > 0 {
println("Lucy's Number")
}
甚至:
if filter([1, 5, 9, 17, 33], {$0 == number}).count > 0 {
println("Lucy's Number")
}
最后,正如@MartinR所建议的那样(经常被忽视的解决方案是最简单的解决方案:):)
if contains([1, 5, 9, 17, 33], number) {
println("Lucy's Number")
}
答案 2 :(得分:0)
除了Dejan Skledars回答..你不需要括号:
var number = 1
if number == 1 || number == 5 {
println("yes")
}
从Swift 1.2开始,您可以使用关键字“where”来使用其他条件。