Swift 3.0在集合类数据结构上的一些新变化总结


Posted in Python onJuly 11, 2016

一、Array数组的更改

array数组中修改的API示例如下:

//创建大量相同元素的数组
//创建有10个String类型元素的数组,并且每个元素都为字符串"Hello"
//swift2.2
//var array3 = [String](count: 10, repeatedValue: "Hello")
//swift3.0
var array3 = [String](repeating: "Hello", count: 10)
//创建有10个Int类型元素的数组,且每个元素都为1
//swift2.2
//var array4 = Array(count: 10, repeatedValue: 1)
//swift3.0
var array4 = Array(repeating: 1, count: 10)

var array = [1,2,3,4,5,6,7,8,9]
//向数组中追加一组元素
//swift2.2
//array.appendContentsOf([11,12,13])
//swift3.0
array.append(contentsOf: [11,12,13])
//向数组中的某个位置插入一个元素
//swift2.2
//array.insert(0, atIndex: 0)
//swift3.0
array.insert(0, at: 0)
//向数组中的某个位置插入一组元素
//swift2.2
//array.insertContentsOf([-2,-1], at: 0)
//swift3.0
array.insert(contentsOf: [-2,-1], at: 0)
//移除数组中某个位置的元素
//swift2.2
//array.removeAtIndex(1)
//swift3.0
array.remove(at: 1)
//移除一个范围内的元素
//swift2.2
//array.removeRange(0...2)
//swift3.0
array.removeSubrange(0...2)
//修改一个范围内的元素
//swift2.2
//array.replaceRange(0...2, with: [0,1])
//swift3.0
array.replaceSubrange(0...2, with: [0,1])
//进行数组枚举遍历 将输出 (0,0) (1,1) (2,2) (3,3) (4,4)
//swift3.0 中将枚举属性enumerate 修改为enumerated()方法
for item in arrayLet.enumerated(){
 print(item)
}
var arraySort = [1,3,5,6,7]
//获取数组中的最大值
//swift2.2
//arraySort.maxElement()
//swift3.0
arraySort.max()
//获取数组中的最小值
//swift2.2
//arraySort.minElement()
//swift3.0
arraySort.min()
//从大到小排序
//swift2.2
//arraySort = arraySort.sort(>)
//swift3.0
arraySort = arraySort.sorted(isOrderedBefore: >)
//从小到大排序
//swift2.2
//arraySort = arraySort.sort(<)
//swift3.0
arraySort = arraySort.sorted(isOrderedBefore: <)
二、Set集合中的更改

Set集合中的修改示例如下:

//创建set集合
var set1:Set<Int> = [1,2,3,4]
//进行下标的移动
//获取某个下标后一个元素
//swlft2.2
//set1[set1.startIndex.successor()]
//swift3.0
set1[set1.index(after: set1.startIndex)]
//获取某个下标后几位的元素
//swift2.2
//set1[set1.startIndex.advancedBy(3)]
//swift3.0
set1[set1.index(set1.startIndex, offsetBy: 3)]
//获取集合中的最大值
//swift2.2
//set1.maxElement()
//swift3.0
set1.max()
//获取集合中的最小值
//swift2.2
//set1.minElement()
//swift3.0
set1.min()
//移除集合中某个位置的元素
//swift2.2
//set1.removeAtIndex(set1.indexOf(3)!)
//swift3.0
set1.remove(at: set1.index(of: 3)!)
var set3:Set<Int> = [1,2,3,4]
var set4:Set<Int> = [1,2,5,6]
//返回交集 {1,2}
//swift2.2
//var setInter = set3.intersect(set4)
//swift3.0
var setInter = set3.intersection(set4)
//返回交集的补集{3,4,5,6}
//swift2.2
//var setEx = set3.exclusiveOr(set4)
//swift3.0
var setEx = set3.symmetricDifference(set4)

var set5:Set = [1,2]
var set6:Set = [2,3]
var set7:Set = [1,2,3]
var set8:Set = [1,2,3]
//判断是否是某个集合的子集 set5是set7的子集 返回ture
//swift2.2
//set5.isSubsetOf(set7)
//swift3.0
set5.isSubset(of: set7)
//判断是否是某个集合的超集 set7是set5的超集 返回ture
//swift2.2
//set7.isSupersetOf(set5)
//swift3.0
set7.isSuperset(of: set5)
//判断是否是某个集合的真子集 set5是set7的真子集 返回ture
//swift2.2
//set5.isStrictSubsetOf(set7)
//swift3.0
set5.isStrictSubset(of: set7)
//判断是否是某个集合的真超集 set7不是set8的真超集 返回false
//swift2.2
//set7.isStrictSupersetOf(set8)
//swift3.0
set7.isStrictSuperset(of: set8)
三、Dictionary字典中的更改

Dictionary字典中修改示例如下:

//通过键删除某个键值对
//swift2.2
//dic1.removeValueForKey(1)
//swift3.0
dic1.removeValue(forKey: 1)
 
Python 相关文章推荐
使用Python下载Bing图片(代码)
Nov 07 Python
Python中用memcached来减少数据库查询次数的教程
Apr 07 Python
Python实现的批量修改文件后缀名操作示例
Dec 07 Python
pycharm 批量修改变量名称的方法
Aug 01 Python
python中类的输出或类的实例输出为这种形式的原因
Aug 12 Python
wxPython:python首选的GUI库实例分享
Oct 05 Python
一文了解python 3 字符串格式化 F-string 用法
Mar 04 Python
Anaconda详细安装步骤图文教程
Nov 12 Python
python 爬取小说并下载的示例
Dec 07 Python
Django与AJAX实现网页动态数据显示的示例代码
Feb 24 Python
python绘制箱型图
Apr 27 Python
通过Python把学姐照片做成拼图游戏
Feb 15 Python
浅析Python的web.py框架中url的设定方法
Jul 11 #Python
深入解析Python的Tornado框架中内置的模板引擎
Jul 11 #Python
使用Python的Tornado框架实现一个Web端图书展示页面
Jul 11 #Python
Windows中使用wxPython和py2exe开发Python的GUI程序的实例教程
Jul 11 #Python
Python的requests网络编程包使用教程
Jul 11 #Python
Python的SQLalchemy模块连接与操作MySQL的基础示例
Jul 11 #Python
Python中的异常处理相关语句基础学习笔记
Jul 11 #Python
You might like
PHP中使用php5-ffmpeg撷取视频图片实例
2015/01/07 PHP
php利用反射实现插件机制的方法
2015/03/14 PHP
php实现网页缓存的工具类分享
2015/07/14 PHP
php脚本守护进程原理与实现方法详解
2017/07/20 PHP
JavaScript获取页面上某个元素的代码
2011/03/13 Javascript
xml转json的js代码
2012/08/28 Javascript
取得元素的左和上偏移量的方法
2014/09/17 Javascript
Javascript 数组排序详解
2014/10/22 Javascript
9款2014最热门jQuery实用特效推荐
2014/12/07 Javascript
node.js中的fs.fsyncSync方法使用说明
2014/12/15 Javascript
jQuery中each()方法用法实例
2014/12/27 Javascript
Nodejs抓取html页面内容(推荐)
2016/08/11 NodeJs
Angular 中 select指令用法详解
2016/09/29 Javascript
详解Bootstrap各式各样的按钮(推荐)
2016/12/13 Javascript
详解nodejs 文本操作模块-fs模块(二)
2016/12/22 NodeJs
使用Node.js实现RESTful API的示例
2017/08/01 Javascript
关于vue中 $emit的用法详解
2018/04/12 Javascript
JS实现select选中option触发事件操作示例
2018/07/13 Javascript
JavaScript多态与封装实例分析
2018/07/27 Javascript
扫微信小程序码实现网站登陆实现解析
2019/08/20 Javascript
layui实现多图片上传并限制上传的图片数量
2019/09/26 Javascript
jQuery擦除插件eraser使用方法详解
2020/01/11 jQuery
[54:18]DOTA2-DPC中国联赛 正赛 PSG.LGD vs LBZS BO3 第一场 1月22日
2021/03/11 DOTA
在Django框架中运行Python应用全攻略
2015/07/17 Python
实例解析Python中的__new__特殊方法
2016/06/02 Python
Django实现自定义404,500页面教程
2017/03/26 Python
opencv实现图片模糊和锐化操作
2018/11/19 Python
更新pip3与pyttsx3文字语音转换的实现方法
2019/08/08 Python
如何使用selenium和requests组合实现登录页面
2020/02/03 Python
美国嘻哈首饰购物网站:Hip Hop Bling
2016/12/30 全球购物
C#里面可以避免一个类被其他类继承么?如何?
2013/09/26 面试题
厨房领班竞聘演讲稿
2014/04/23 职场文书
团日活动总结范文
2014/04/25 职场文书
我的中国梦主题班会
2015/08/14 职场文书
经典人生语录分享:不畏将来,不念过去,笑对当下
2019/12/12 职场文书
Android基于Fresco实现圆角和圆形图片
2022/04/01 Java/Android