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类的动态修改的实例方法
Mar 24 Python
python判断一个集合是否为另一个集合的子集方法
May 04 Python
Python基于百度云文字识别API
Dec 13 Python
python 使用pandas计算累积求和的方法
Feb 08 Python
python-itchat 统计微信群、好友数量,及原始消息数据的实例
Feb 21 Python
Django使用Jinja2模板引擎的示例代码
Aug 09 Python
Python多线程爬取豆瓣影评API接口
Oct 22 Python
python3 Scrapy爬虫框架ip代理配置的方法
Jan 17 Python
Python telnet登陆功能实现代码
Apr 16 Python
Django rest framework分页接口实现原理解析
Aug 21 Python
python实现图书馆抢座(自动预约)功能的示例代码
Sep 29 Python
python opencv旋转图片的使用方法
Jun 04 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
杏林同学录(五)
2006/10/09 PHP
安装APACHE
2007/01/15 PHP
PHP的开发框架的现状和展望
2007/03/16 PHP
php插入中文到sqlserver 2008里出现乱码的解决办法分享
2012/07/19 PHP
关于使用coreseek并为其做分页的介绍
2013/06/21 PHP
php定界符
2014/06/19 PHP
PHP中抽象类和抽象方法概念与用法分析
2016/05/24 PHP
iis6+javascript Add an Extension File
2007/06/13 Javascript
如何获取网站icon有哪些可行的方法
2014/06/05 Javascript
Javascript中的arguments与重载介绍
2015/03/15 Javascript
js绘制圆形和矩形的方法
2015/08/05 Javascript
轻松学习jQuery插件EasyUI EasyUI实现拖动基本操作
2015/11/30 Javascript
jQuery进行组件开发完整实例
2015/12/15 Javascript
图解prototype、proto和constructor的三角关系
2016/07/31 Javascript
解决React Native端口号修改的方法
2017/07/28 Javascript
原生JS实现小小的音乐播放器
2017/10/16 Javascript
JsChart组件使用详解
2018/03/04 Javascript
JavaScript剩余操作符Rest Operator详解
2019/07/20 Javascript
[04:09]显微镜下的DOTA2第十二期—NaVi美如画的团战
2014/06/23 DOTA
[00:43]2016完美“圣”典风云人物:单车宣传片
2016/12/02 DOTA
Python的Tornado框架异步编程入门实例
2015/04/24 Python
python嵌套函数使用外部函数变量的方法(Python2和Python3)
2016/01/31 Python
Python将图片批量从png格式转换至WebP格式
2020/08/22 Python
python 通过 socket 发送文件的实例代码
2018/08/14 Python
python实现扫描局域网指定网段ip的方法
2019/04/16 Python
django query模块
2019/04/20 Python
使用Python的Turtle库绘制森林的实例
2019/12/18 Python
佳能加拿大网上商店:Canon eStore Canada
2018/04/04 全球购物
新护士岗前培训制度
2014/02/02 职场文书
大学生职业生涯规划书参考模板
2014/03/05 职场文书
《第一次抱母亲》教学反思
2014/04/16 职场文书
副总经理任命书
2014/06/05 职场文书
科技活动周标语
2014/10/08 职场文书
圆明园观后感
2015/06/03 职场文书
中考百日冲刺决心书
2015/09/22 职场文书
学习焦裕禄先进事迹心得体会
2016/01/23 职场文书