下限< A<上限

时间:2014-09-25 02:03:59

标签: swift boolean xcode6 boolean-expression

我需要知道某些事情是否在两个限制之间,但我在游乐场中遇到同样的2个错误,我似乎无法在网络上找到解决方案。知道如何在Swift中做到这一点吗?

var upperLimit = 20
var a = 10
var lowerlimit = 5

if a > lowerlimit < upperLimit{      
println(a)
}


if  lowerlimit < a < upperLimit{
println(a)
}

这两种方法都给出了相同的(2)错误消息:

---&GT; !非关联运算符与具有相同优先级的运算符相邻

- &GT;无法使用列表类型'($ t4,@ Value Int)'的参数调用'&lt;'

1 个答案:

答案 0 :(得分:3)

这不是进行比较的有效方法。您需要通过两次比较来检查边界:

if a > lowerlimit && a < upperLimit {
    println(a)
}

虽然我更喜欢这种方式在范围内使用模式识别。

if lowerlimit..<upperLimit ~= a {
    println(a)
}

请注意,模式识别方式要求下限具有包容性,因此您需要将lowerLimit变量增加一。