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中的集合类型知识讲解
Aug 19 Python
详解Python 序列化Serialize 和 反序列化Deserialize
Aug 20 Python
Python3.6 Schedule模块定时任务(实例讲解)
Nov 09 Python
运行django项目指定IP和端口的方法
May 14 Python
Django 使用Ajax进行前后台交互的示例讲解
May 28 Python
python爬虫之urllib库常用方法用法总结大全
Nov 14 Python
Python使用folium excel绘制point
Jan 03 Python
Python queue队列原理与应用案例分析
Sep 27 Python
Python使用微信接入图灵机器人过程解析
Nov 04 Python
使用python处理题库表格并转化为word形式的实现
Apr 14 Python
python实现学生成绩测评系统
Jun 22 Python
Python爬虫实例——爬取美团美食数据
Jul 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获取当前时间的毫秒数的方法
2014/01/26 PHP
php获取发送给用户的header信息的方法
2015/03/16 PHP
PHP MSSQL 分页实例
2016/04/13 PHP
总结PHP中初始化空数组的最佳方法
2019/02/13 PHP
一次因composer错误使用引发的问题与解决
2019/03/06 PHP
JSON 教程 json入门学习笔记
2020/09/22 Javascript
jQuery对表单的操作代码集合
2011/04/06 Javascript
JS解决ie6下png透明的方法实例
2013/08/02 Javascript
jQuery内置的AJAX功能和JSON的使用实例
2014/07/27 Javascript
使用jquery.upload.js实现异步上传示例代码
2014/07/29 Javascript
javascript中数组array及string的方法总结
2014/11/28 Javascript
JS实现灵巧的下拉导航效果代码
2015/08/25 Javascript
JavaScript仿网易选项卡制作代码
2016/10/06 Javascript
js模仿微信朋友圈计算时间显示几天/几小时/几分钟/几秒之前
2017/04/27 Javascript
简单了解vue.js数组的常用操作
2019/06/17 Javascript
前后端常见的几种鉴权方式(小结)
2019/08/04 Javascript
javascript实现点击小图显示大图
2020/11/29 Javascript
Javascript实现单选框效果
2020/12/09 Javascript
[02:25]DOTA2英雄基础教程 熊战士
2014/01/03 DOTA
python循环监控远程端口的方法
2015/03/14 Python
Python发送email的3种方法
2015/04/28 Python
python安装cx_Oracle模块常见问题与解决方法
2017/02/21 Python
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
2018/06/22 Python
使用pyecharts生成Echarts网页的实例
2019/08/12 Python
Python实现非正太分布的异常值检测方式
2019/12/09 Python
Silk’n激光脱毛器官网:silkn.com
2016/10/06 全球购物
师范应届毕业生自荐信
2013/11/18 职场文书
数学专业推荐信范文
2013/11/21 职场文书
如何撰写岗位职责
2014/02/01 职场文书
预备党员期盼十八届四中全会召开思想汇报
2014/10/17 职场文书
作弊检讨书
2015/01/27 职场文书
公司捐书倡议书
2015/04/27 职场文书
2015年前台文员工作总结
2015/05/18 职场文书
2015年物业管理员工工作总结
2015/10/15 职场文书
2016年“我们的节日·中秋节”活动总结
2016/04/05 职场文书
Django使用redis配置缓存的方法
2021/06/01 Redis