如何检查常量中的Int是否与CountableClosedRange <int>中的Int相匹配

时间:2018-08-30 06:11:01

标签: ios swift

我是编程新手。自我教学,所以我想向互联网寻求帮助。

我想查看存储在常量中的Int是否与CountableClosedRange中的一位数字匹配,如果是,则将布尔值true吐出。见下文:

let physics = 76
let math = 79
let history = 94
let language = 98


let aPlus = [95...100]

let didPhysicsGetA = physics == aPlus

76显然不在该范围内,因此在这种情况下,我希望didPhysicsGetA复归为false。

我该怎么办?还有更好的方法吗?

3 个答案:

答案 0 :(得分:4)

首先[95...100]将导致[CountableClosedRange<Int>]表示CountableClosedRange<Int>的数组。因此,您需要的是(95...100)

let aPlus = (95...100) // or you can even emit the brackets 95...100

现在要检查Int是否在此aPlus范围内,您可以像这样使用模式匹配运算符~=

let didPhysicsGetA = aPlus ~= physics
print(didPhysicsGetA) // false

答案 1 :(得分:3)

[]表示一个数组。您只需要一个范围,而不是一个范围数组,因此应删除[]

let aPlus = 95...100

要检查数字是否在范围内,可以使用~=模式匹配运算符,

physics ~= aPlus

或致电contains

aPlus.contains(physics)

您应该选择最容易阅读的内容。

答案 2 :(得分:2)

尝试一下:

let physics = 76
let language = 98

let aPlus = 95...100

print(aPlus ~= physics) // false
print(aPlus ~= language) // true

OR

aPlus.contains(physics) // false
aPlus.contains(language) // true