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使用PyGame播放Midi和Mp3文件的方法
Apr 24 Python
MySQL中表的复制以及大型数据表的备份教程
Nov 25 Python
5种Python单例模式的实现方式
Jan 14 Python
利用python爬取散文网的文章实例教程
Jun 18 Python
Zookeeper接口kazoo实例解析
Jan 22 Python
python下的opencv画矩形和文字注释的实现方法
Jul 09 Python
Pytorch中accuracy和loss的计算知识点总结
Sep 10 Python
基于Python3.6中的OpenCV实现图片色彩空间的转换
Feb 03 Python
Pycharm中配置远程Docker运行环境的教程图解
Jun 11 Python
keras.utils.to_categorical和one hot格式解析
Jul 02 Python
Python torch.flatten()函数案例详解
Aug 30 Python
python微信智能AI机器人实现多种支付方式
Apr 12 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利用cookie实现访问次数统计代码
2011/05/19 PHP
免费的ip数据库淘宝IP地址库简介和PHP调用实例
2014/04/08 PHP
PHP优化之批量操作MySQL实例分析
2020/04/23 PHP
firefox下frameset取不到值的解决方法
2010/09/06 Javascript
json的前台操作和后台操作实现代码
2012/01/20 Javascript
Jquery插件编写简明教程
2014/03/25 Javascript
jQuery动态创建html元素的常用方法汇总
2014/09/05 Javascript
jQuery Password Validation密码验证
2016/12/30 Javascript
深入探究angular2 UI组件之primeNG用法
2017/07/26 Javascript
JS 中document.write()的用法和清空的原因浅析
2017/12/04 Javascript
Angular5中调用第三方库及jQuery的添加的方法
2018/06/07 jQuery
Node爬取大批量文件的方法示例
2019/06/28 Javascript
vue实现简单全选和反选功能
2020/09/15 Javascript
[01:28:56]2014 DOTA2华西杯精英邀请赛 5 24 CIS VS DK
2014/05/26 DOTA
python中sys.argv参数用法实例分析
2015/05/20 Python
python保存字符串到文件的方法
2015/07/01 Python
Python简单获取网卡名称及其IP地址的方法【基于psutil模块】
2018/05/24 Python
Python使用numpy模块实现矩阵和列表的连接操作方法
2019/06/26 Python
Django 权限认证(根据不同的用户,设置不同的显示和访问权限)
2019/07/24 Python
Python configparser模块操作代码实例
2020/06/08 Python
python 下载m3u8视频的示例代码
2020/11/11 Python
python自动从arxiv下载paper的示例代码
2020/12/05 Python
Python用户自定义异常的实现
2020/12/25 Python
html5使用canvas画空心圆与实心圆
2014/12/15 HTML / CSS
奥地利网上现代灯具和灯饰店:Lampenwelt.at
2018/01/29 全球购物
英超联赛的首选足球:Mitre足球
2019/05/06 全球购物
教你怎样写好自我评价
2013/10/05 职场文书
工程测量与监理专业应届生求职信
2013/11/27 职场文书
本科生的职业生涯规划范文
2014/01/09 职场文书
公司会计主管岗位责任制
2014/03/01 职场文书
2014银行领导班子四风对照检查材料思想汇报
2014/09/25 职场文书
画展邀请函
2015/01/31 职场文书
预备党员入党感想
2015/08/10 职场文书
2015年小学体育教师工作总结
2015/10/23 职场文书
读完《骆驼祥子》的观后感!
2019/07/05 职场文书
教你怎么用python爬取爱奇艺热门电影
2021/05/20 Python