【iOS】swift 排序Sort函数用法(包含NSDictionary排序)
2015-12-02 10:15
405 查看
用了几分钟做的简单翻译
一个例子
直接贴代码,不过多解释//这是我们的model class imageFile { var fileName = String() var fileID = Int() }
//使用 var images : [imageFile] = [] images.sort({ $0.fileID > $1.fileID })
下面是闭包的进阶使用
// 一般的代码形式 images.sort({ (image1: imageFile, image2: imageFile) -> Bool in return image1.fileID > image2.fileID }) // 省略(->)的形式 images.sort({ image1, image2 in return image1.fileID > image2.fileID }) // 去掉return的简单闭包形式 images.sort({ image1, image2 in image1.fileID > image2.fileID }) // 隐藏参数的形式 images.sort({ $0.fileID > $1.fileID }) // 以下结果都是相同,只是书写形式不同 images = images.sorted({ (image1: imageFile, image2: imageFile) -> Bool in return image1.fileID > image2.fileID }) images = images.sorted({ image1, image2 in return image1.fileID > image2.fileID }) images = images.sorted({ image1, image2 in image1.fileID > image2.fileID }) images = images.sorted({ $0.fileID > $1.fileID })
//swift标准库 sort(&images, { (image1: imageFile, image2: imageFile) -> Bool in return image1.fileID > image2.fileID }) sort(&images, { image1, image2 in return image1.fileID > image2.fileID }) sort(&images, { image1, image2 in image1.fileID > image2.fileID }) sort(&images, { $0.fileID > $1.fileID }) //使用方法 images = sorted(images, { (image1: imageFile, image2: imageFile) -> Bool in return image1.fileID > image2.fileID }) images = sorted(images, { image1, image2 in return image1.fileID > image2.fileID }) images = sorted(images, { image1, image2 in image1.fileID > image2.fileID }) images = sorted(images, { $0.fileID > $1.fileID })
let dictionary = [ "A" : [1, 2], "Z" : [3, 4], "D" : [5, 6] ]
NSDictionary根据key排序
let sortedKeys = Array(dictionary.keys).sorted(<) // ["A", "D", "Z"]
let sortedKeysAndValues = sorted(dictionary) { $0.0 < $1.0 } println(sortedKeysAndValues) // [(A, [1, 2]), (D, [5, 6]), (Z, [3, 4])]
相关文章推荐
- 【iOS】swift 排序Sort函数用法(包含NSDictionary排序)
- Swift UIButton 和 UILabel 的详细解释和创建使用
- 【iOS】swift 让程序挂起后,能在后台继续运行任务
- 【iOS】swift 让程序挂起后,能在后台继续运行任务
- Swift-控制流
- Objecetive-C PK Swift
- Swift - 重要知识点总结
- Swift的一些翻译:tips
- swift初体验
- swift delegate
- Swift 三方库的使用
- Swift-简单值
- 43个优秀的Swift开源项目推荐
- 《swift2.0 官方教程中文版》 第2章-14构造过程
- Swift 中的 数组排序 和 重载运算符
- [ios][swift]文本框UITextField用法
- swift中 ? 和 ! 的区别
- Swift备忘 - 自定义日志记录中的print与NSDate
- 3D Touch swift 版本
- Swift图片轮播的代码