我需要知道某些东西是否在两个限制之间,但我在 Playground 上不断收到相同的两个错误,而且我似乎无法在网络上找到解决方案。知道如何在 Swift 中做到这一点吗?
var upperLimit = 20
var a = 10
var lowerlimit = 5
if a > lowerlimit < upperLimit{
println(a)
}
if lowerlimit < a < upperLimit{
println(a)
}
这两种方法都会给出相同的 (2) 错误消息:
--->!非关联运算符与相同优先级的运算符相邻
--> 无法使用列表类型“($t4, @Ivalue Int)”的参数调用“<”
最佳答案
这不是进行比较的有效方法。您需要通过两次比较来检查边界:
if a > lowerlimit && a < upperLimit {
println(a)
}
尽管我更喜欢这种在范围内使用模式识别的方式。
if lowerlimit..<upperLimit ~= a {
println(a)
}
请注意,模式识别方式要求包含下限,因此您需要将 lowerLimit 变量增加 1。
关于swift - 下限 < A < 上限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26029326/