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 urllib模块urlopen()与urlretrieve()详解
Nov 01 Python
python类继承用法实例分析
Oct 10 Python
浅谈终端直接执行py文件,不需要python命令
Jan 23 Python
python3.6 实现AES加密的示例(pyCryptodome)
Jan 10 Python
python中正则表达式的使用方法
Feb 25 Python
Python 访问限制 private public的详细介绍
Oct 16 Python
Python中浅拷贝copy与深拷贝deepcopy的简单理解
Oct 26 Python
对numpy中向量式三目运算符详解
Oct 31 Python
python使用response.read()接收json数据的实例
Dec 19 Python
解决python写入带有中文的字符到文件错误的问题
Jan 31 Python
python文件和文件夹复制函数
Feb 07 Python
Python如何实现小程序 无限求和平均
Feb 18 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之require/include顺序 推荐
2011/01/02 PHP
PHP加Nginx实现动态裁剪图片方案
2014/03/10 PHP
PHPMailer使用QQ邮箱实现邮件发送功能
2017/08/18 PHP
PHP实现网站应用微信登录功能详解
2019/04/11 PHP
js、jquery图片动画、动态切换示例代码
2014/06/03 Javascript
jQuery的图片滑块焦点图插件整理推荐
2014/12/07 Javascript
jquery实现未经美化的简洁TAB菜单效果
2015/08/28 Javascript
jquery插件之文字间歇自动向上滚动效果代码
2016/02/25 Javascript
通过jsonp获取json数据实现AJAX跨域请求
2017/01/22 Javascript
jQuery实现返回顶部按钮和scroll滚动功能[带动画效果]
2017/07/05 jQuery
js模拟百度模糊搜索的实例
2017/08/04 Javascript
Nodejs实现多文件夹文件同步
2018/10/17 NodeJs
微信小程序实现跑马灯效果
2020/10/21 Javascript
基于js Canvas实现二次贝塞尔曲线
2018/12/25 Javascript
js中怎么判断两个字符串相等的实例
2019/01/17 Javascript
JavaScript数组及常见操作方法小结
2019/11/13 Javascript
element-ui和vue表单(对话框)验证提示语(残留)清除操作
2020/09/11 Javascript
[58:35]OG vs EG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.22
2019/09/05 DOTA
python的描述符(descriptor)、装饰器(property)造成的一个无限递归问题分享
2014/07/09 Python
用Python制作检测Linux运行信息的工具的教程
2015/04/01 Python
Python找出list中最常出现元素的方法
2016/06/14 Python
Python的SimpleHTTPServer模块用处及使用方法简介
2018/01/22 Python
python如何给字典的键对应的值为字典项的字典赋值
2019/07/05 Python
postman传递当前时间戳实例详解
2019/09/14 Python
Python学习笔记之函数的参数和返回值的使用
2019/11/20 Python
Python3基于plotly模块保存图片表格
2020/08/03 Python
css3中背景尺寸background-size详解
2014/09/02 HTML / CSS
让ie浏览器成为支持html5的浏览器的解决方法(使用html5shiv)
2014/04/08 HTML / CSS
英国团购网站:Groupon英国
2017/11/28 全球购物
SAZAC的动物连体衣和动物睡衣:Kigurumi Shop
2020/03/14 全球购物
司法所长先进事迹
2014/06/02 职场文书
毕业生应聘求职信
2014/07/10 职场文书
2014年超市工作总结
2014/11/19 职场文书
自荐信格式范文
2015/03/04 职场文书
5个实用的JavaScript新特性
2022/06/16 Javascript
Redis主从复制操作和配置详情
2022/09/23 Redis