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的类实例属性访问规则探讨
Jan 30 Python
Python写的服务监控程序实例
Jan 31 Python
python一键升级所有pip package的方法
Jan 16 Python
python中pandas.DataFrame排除特定行方法示例
Mar 12 Python
详解python 拆包可迭代数据如tuple, list
Dec 29 Python
Python装饰器用法示例小结
Feb 11 Python
django 通过ajax完成邮箱用户注册、激活账号的方法
Apr 17 Python
dataframe 按条件替换某一列中的值方法
Jan 29 Python
django配置连接数据库及原生sql语句的使用方法
Mar 03 Python
解决Numpy中sum函数求和结果维度的问题
Dec 06 Python
Python常用扩展插件使用教程解析
Nov 02 Python
教你怎么用Python操作MySql数据库
May 31 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
轻松修复Discuz!数据库
2008/05/03 PHP
PHP中PDO的错误处理
2011/09/04 PHP
JS控制阿拉伯数字转为中文大写示例代码
2013/09/04 Javascript
3分钟写出来的Jquery版checkbox全选反选功能
2013/10/23 Javascript
判断一个对象是否为jquery对象的方法
2014/03/12 Javascript
js+div实现文字滚动和图片切换效果代码
2015/08/27 Javascript
解决jquery插件:TypeError:$.browser is undefined报错的方法
2015/11/21 Javascript
jquery模拟实现鼠标指针停止运动事件
2016/01/12 Javascript
javascript单页面手势滑屏切换原理详解
2016/03/21 Javascript
Ionic2系列之使用DeepLinker实现指定页面URL
2016/11/21 Javascript
Bootstrap栅格系统使用方法及页面调整变形的解决方法
2017/03/10 Javascript
jquery中$.fn和图片滚动效果实现的必备知识总结
2017/04/21 jQuery
微信小程序实现表单校验功能
2020/03/30 Javascript
基于BootStrap的文本编辑器组件Summernote
2017/10/27 Javascript
bootstrap-table.js扩展分页工具栏(增加跳转到xx页)功能
2017/12/28 Javascript
vue 开发企业微信整合案例分析
2019/12/02 Javascript
python 文件和路径操作函数小结
2009/11/23 Python
python实现根据月份和日期得到星座的方法
2015/03/27 Python
Python中的类与对象之描述符详解
2015/03/27 Python
Python使用Srapy框架爬虫模拟登陆并抓取知乎内容
2016/07/02 Python
使用Python将数组的元素导出到变量中(unpacking)
2016/10/27 Python
Python常见内置高效率函数用法示例
2018/07/31 Python
python如何实现复制目录到指定目录
2020/02/13 Python
matlab灰度图像调整及imadjust函数的用法详解
2020/02/27 Python
如何用Python 加密文件
2020/09/10 Python
python中time.ctime()实例用法
2021/02/03 Python
Python 实现劳拉游戏的实例代码(四连环、重力四子棋)
2021/03/03 Python
关于CSS Tooltips(鼠标经过时显示)的效果
2013/04/10 HTML / CSS
新加坡网上美容店:Hermo新加坡
2019/06/19 全球购物
餐饮主管岗位职责
2013/12/10 职场文书
代理协议书
2014/04/22 职场文书
锦旗标语大全
2014/06/23 职场文书
“四风”问题的主要表现和危害思想汇报
2014/09/19 职场文书
党的群众路线查摆剖析材料
2014/10/10 职场文书
2015年个人工作总结报告
2015/04/25 职场文书
字节飞书面试promise.all实现示例
2022/06/16 Javascript