我需要知道某些事情是否在两个限制之间,但我在游乐场中遇到同样的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;'
答案 0 :(得分:3)
这不是进行比较的有效方法。您需要通过两次比较来检查边界:
if a > lowerlimit && a < upperLimit {
println(a)
}
虽然我更喜欢这种方式在范围内使用模式识别。
if lowerlimit..<upperLimit ~= a {
println(a)
}
请注意,模式识别方式要求下限具有包容性,因此您需要将lowerLimit变量增加一。