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 相关文章推荐
精确查找PHP WEBSHELL木马的方法(1)
Apr 12 Python
有趣的python小程序分享
Dec 05 Python
Python 中字符串拼接的多种方法
Jul 30 Python
python实现几种归一化方法(Normalization Method)
Jul 31 Python
opencv实现简单人脸识别
Feb 19 Python
浅谈Python_Openpyxl使用(最全总结)
Sep 05 Python
python GUI库图形界面开发之PyQt5信号与槽机制、自定义信号基础介绍
Feb 25 Python
PyCharm取消波浪线、下划线和中划线的实现
Mar 03 Python
Python使用socket_TCP实现小文件下载功能
Oct 09 Python
Python confluent kafka客户端配置kerberos认证流程详解
Oct 12 Python
使用豆瓣源来安装python中的第三方库方法
Jan 26 Python
用python 绘制茎叶图和复合饼图
Feb 26 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 date与gmdate的获取日期的区别
2010/02/08 PHP
浅析使用Turck-mmcache编译来加速、优化PHP代码
2013/06/20 PHP
ThinkPHP惯例配置文件详解
2014/07/14 PHP
PHPstorm激活码2020年5月13日亲测有效
2020/09/17 PHP
Jquery中getJSON在asp.net中的使用说明
2011/03/10 Javascript
jquery通过visible来判断标签是否显示或隐藏
2014/05/08 Javascript
使用javascript实现json数据以csv格式下载
2015/01/09 Javascript
js实现键盘Enter键提交表单的方法
2015/05/27 Javascript
js图片轮播效果实现代码
2020/04/18 Javascript
基于JavaScript如何制作遮罩层对话框
2016/01/26 Javascript
Bootstrap的基本应用要点浅析
2016/12/19 Javascript
jQuery弹出窗口简单实现代码
2017/03/09 Javascript
JavaScript基本语法_动力节点Java学院整理
2017/06/26 Javascript
Vue中封装input组件的实例详解
2017/10/17 Javascript
基于JSONP原理解析(推荐)
2017/12/04 Javascript
详解webpack 热更新优化
2018/09/13 Javascript
推荐15个最好用的JavaScript代码压缩工具
2019/02/13 Javascript
Vue基础学习之项目整合及优化
2019/06/02 Javascript
node读写Excel操作实例分析
2019/11/06 Javascript
jQuery实现的分页插件完整示例
2020/05/26 jQuery
JS实现鼠标按下拖拽效果
2020/07/23 Javascript
[02:51]DOTA2英雄基础教程 艾欧
2014/01/13 DOTA
[41:52]2018DOTA2亚洲邀请赛3月29日 小组赛A组 TNC VS OpTic
2018/03/30 DOTA
利用Python演示数型数据结构的教程
2015/04/03 Python
一个月入门Python爬虫学习,轻松爬取大规模数据
2018/01/03 Python
浅谈Python对内存的使用(深浅拷贝)
2018/01/17 Python
Python使用random.shuffle()打乱列表顺序的方法
2018/11/08 Python
python 默认参数相关知识详解
2019/09/18 Python
django 实现简单的插入视频
2020/04/07 Python
python 用Matplotlib作图中有多个Y轴
2020/11/28 Python
Roxy美国官网:澳大利亚冲浪、滑雪健身品牌
2016/07/30 全球购物
高中军训感想300字
2014/03/04 职场文书
领导干部保密承诺书
2014/08/30 职场文书
2014年督导工作总结
2014/11/19 职场文书
职位证明模板
2015/06/23 职场文书
Oracle删除归档日志及添加定时任务
2022/06/28 Oracle