Swift 区间运算符
在本文中,我们将通过示例了解 Swift 区间(Range)及其类型。
在 Swift 中,区间(范围)是两个数字间隔之间的一系列值。例如,
var numbers = 1...4
这里,
- … 是一个区间运算符
- 1…4 包含值 1、2、3、4
- 1 是下限(第一个元素)
- 4 是上限(最后一个元素)
Swift 中的区间类型
在 Swift 中,有三种类型的区间:
1. 封闭区间
闭合区间包括从下限到上限的间隔中的所有值。
它使用 …
(3点)运算符声明。例如,
// 1...4 is close range
for numbers in 1...4 {
print(numbers)
}
结果如下:
1
2
3
4
在上面的实例中,我们创建了一个闭合区间 1…4。
因为它是一个闭合区间,所以它包含 1 到 4 之间的所有数字,包括下限(1)和上限(4)。
在这里,我们使用 Swift for 循环 访问区间内的所有值。
2. 半开区间
半开区间包括从下限到上限的所有值。但是,它不包括上限(最后一个数字)。
它是使用 ..<
运算符声明的。例如,
for numbers in 1..<4 {
print(numbers)
}
结果为:
1
2
3
在上面的实例中,我们创建了一个半开区间 1..<
4。由于它是一个半开放区间,因此不包括上限元素 4。
3. 单边区间
我们可以使用 …
或 ..<
运算符创建单边区间。
单边区间包含在一个方向上最多无限的元素。例如,
let range1 = ..<2
包含从 2 到的所有元素 +∞。
我们可以通过检查区间内是否存在某个数字来验证这一点。例如,
// one-sided range using
// ..< operator
let range1 = ..<2
// check if -9 is in the range
print(range1.contains(-1))
// one-sided range using
// ... operator
let range2 = 2...
// check if 33 is in the range
print(range2.contains(33))
结果如下:
true
tru
这里,我们使用 contains()
方法检查区间中是否存在某个数字。
注意:对于单边区间,我们只设置上限或下限。
使用 Swift 区间访问数组元素
我们还可以使用 Swift 区间访问数组元素。例如,
let languages = ["Swift", "Java", "C"]
// access array elements
print(languages[0...2])
结果如下:
["Swift", "Java", "C"]
这里,区间 0…2
充当数组索引,帮助我们访问所有数组元素。
Swift 区间的注意事项
1.下限值必须小于上限值。例如,
// Invalid Range
3...1
// Valid Range
1...3
2.下限和上限值可以为负值。例如,
// negative lower bound
-3...1
// negative upper and lower bound
-9...-2