4、集合类型
2016-02-18 14:13
375 查看
1.数组的创建:
2.访问修改数组:
3.数组的遍历
集合(set)
1.存储相同类型没有确定顺序的值,集合中没有重复的元素.
2.创建和构造一个空的集合
3.用数组的字面量创建集合
4.访问修改一个集合
5.遍历:
6.两个集合之间的操作:
字典:
1.创建字一个空字典:
2.访问和修改字典:
3.遍历:
var someInts = [Int]() 1.1 创建带默认值的数组 var threeDoubles = [Double](count:3,repeatedValue:0.0) 1.2 数组相加 + (数组的元素类型相同)
2.访问修改数组:
2.1 长度判断:count 2.2 判断空:isEMpty 2.3 追加数据:append(_:) 2.4 += : 添加一个或多个拥有相同类型的数据项. 2.4 可以通过下标来更改一个某个索引值 var shoppingList = ["Chocolate","Spread","Cheese","Butter"] shoppingList[1] = "apple" shoppingList[1...3] = ["apple"] // 这样索引值为2,3的值就相当于被去掉了 2.5 insert(_:atIndex:) 在某个索引值之前添加数据项 2.6 removeAtIndex(_:) 移除某一索引的值 2.7 removeLast() 移除最后一项
3.数组的遍历
for in for item in shoppingList{ print(item) } enumerate()方法返回一个由数据的索引值和数据值组成的元组. for (index,value) in shoppingList.enumerate(){ print("index = \(index), value = \(value)") }
集合(set)
1.存储相同类型没有确定顺序的值,集合中没有重复的元素.
存储在set中的元素都是可哈希化得,哈希值是Int类型的.相等的对象哈希值必须相同 a==b, a.hashValue = b.hashValue swift 中所有的基本类型默认是可哈希化的. 可以使用自定义的类型作为集合的值的类型或字典的键值,前提是必须是遵守哈希协议的. 哈希协议:提供一个类型为Int的可读属性hashValue
2.创建和构造一个空的集合
var letters = Set<Character>() // 推断出letters的类型是Set<Character>
3.用数组的字面量创建集合
var favoriteGenres:Set = ["Rock", "Classical", "Hip hop"] // 推断出favoriteGenres的类型是Set<String>类型的.
4.访问修改一个集合
count isEMpty, insert(_:)无序的, remove(_:) 删除元素并返回这个元素值. contains(_:) 检测set中是否包含一个特定的值
5.遍历:
for in
6.两个集合之间的操作:
intersect(_:) 交集 exclusiveOr(_:) 并集 - 交集 union(_:) 并集 subtract(_:) 去掉交集之后
字典:
1.创建字一个空字典:
var namesOfIntegers = [Int:String]() var airports: [String: String] = ["YYZ": "Toronto Pearson", "DUB": "Dublin"]
2.访问和修改字典:
count: isEmpty: 下标取值:返回对应值的可选值. updateValue(_:forKey:) 可以设置或者更新特定键对应的值,返回对应值的类型的可选值. removeValueForKey(_:) 返回对应值的类型的可选值.
3.遍历:
for (airportCode, airportName) in airports { }
通过访问keys或者values属性. for airportCode in airports.keys { } for airportName in airports.values { }
相关文章推荐
- 结构型模式7之2-Adapter适配器模式例子理解
- android studio插件收集
- UIScrollView头文件学习
- 七问“互联网+保险”:竞争力、核心价值何在?
- andorid jni入门教程一之helloworld
- KVC
- ASP.NET MVC3中Controller与View之间的数据传递总结
- 网站优化之如何做好网站排名
- ios屏幕底部弹出提示
- 一台电脑同时运行多个tomcat
- 自定义菜单,带参数的跳转url
- 在sdwebimage中加载webp格式图片。
- Meteor在Windows下开发环境配置
- android 调用系统相机和相册
- The application could not be verified.
- 比较好的工作环境
- Java线程(篇外篇):线程本地变量ThreadLocal
- Mac环境下Myeclispe2015工具的安装与破解
- CURL使用2
- 使用批处理自动发布IIS站点,基于IIS7及以上