Swift - 区间运算符(... 和 ..<)
2016-07-07 16:23
411 查看
区间运算符可以用来表示两个操作数之间的范围集合
1,闭区间运算符:a...b
2,半闭区间运算符:a..<b
注:使用 ..<来创建一个不包含最大值的区间,使用 ... 来创造一个包含最大值和最小值的区间
3,字符串范围也可以使用区间运算符
4,倒序循环
通过reversed()方法,我们可以将一个正序循环变成逆序循环,代码如下:
5,区间运算符除了返回一个Range外,还可以接受Comparable的输入,返回闭区间和半闭区间,所以我们可以用这个特性检查字符串里的字符是不是都是合法字符(比如是不是都是小写)
1,闭区间运算符:a...b
for icount in 512...1024 { print(icount)//从512遍历到1024(包括1024) }
2,半闭区间运算符:a..<b
et fruts = ["apple","orange","banana"] let icount = fruts.count for i in 0..<icount { print("第\(i+1)个水果是\(fruts[i])") }
注:使用 ..<来创建一个不包含最大值的区间,使用 ... 来创造一个包含最大值和最小值的区间
3,字符串范围也可以使用区间运算符
//字符串截取 let words = "hhggll.com" //不使用区间运算符 let index = words.index(words.startIndex, offsetBy: 4) let index2 = words.index(words.startIndex, offsetBy: 6) let range1 = Range(uncheckedBounds: (lower: index, upper: index2)) let rangeStr1 = words.substring(with: range1) //ge print(rangeStr1) //使用区间运算符 let range2 = words.index(words.startIndex, offsetBy: 4)..<words.index(words.startIndex,offsetBy: 6) let rangeStr2 = words.substring(with: range2) //ge print(rangeStr2)
4,倒序循环
通过reversed()方法,我们可以将一个正序循环变成逆序循环,代码如下:
for i in (0..<10).reversed(){ print(i) }
5,区间运算符除了返回一个Range外,还可以接受Comparable的输入,返回闭区间和半闭区间,所以我们可以用这个特性检查字符串里的字符是不是都是合法字符(比如是不是都是小写)
let hWords = "Hhggll.com" let interval = "a"..."z" for c in hWords.characters { if !interval.contains(String(c)) { print("\(c)不是小写字母") } }
相关文章推荐
- Swift开发之头部图片轮播器
- 怎么让一个项目里swift与OC可以兼容混合开发?
- Swift开发基础 二
- Swift - 使用arc4random()、arc4random_uniform()取得随机数
- Swift - 基本数据类型,及常/变量声明
- swift-UI控件开发之UITabBarController的创建
- Swift 算法实战之路:二叉树
- 初见Swift----基础一
- Swift の 函数式编程
- Swift - 自定义tabbar的封装
- Swift-函数
- Swift基础之UITabBarController(这是在之前UITableView中直接添加的)
- Swift基础之UITabBarController(这是在之前UITableView中直接添加的)
- Swift专栏:第二章 Swift基础语法(二)
- Swift Swizzled
- Swift - 用装有控制器name的数组for循环批量创建控制器(string转UIViewController)
- Swift - 如何让UIView,UILabel和UIImageView之间类型互相转化
- Swift - 如何判断一个对象是否是某个类
- swift-变量和常量
- Apple Pay-swift篇