6 字典和集合——《Swift3.0从入门到出家》
字典和集合
字典
字典是集合类型存放多个键值对,其中键是唯一的,不能重复
字典中存放的键值对是无序的,写入的顺序和读取的顺序可能不同
字典中存放的数据是任意类型
字典可以分为可变字典和不可变字典
创建空字典
var dic: Dictionary<String,String> = Dictionary<String,String>()
var dic: [String:String] = [:]
var dic: [String:String] = Dictionary()
var dic: [String:String] = [String:String]()
简单方法创建字典
var dic: [Int:String] = [1:”one”,2:”two”]
var dic = [1:2,3:4,”t”:[1,2,3,4]] //字典可以存放多种类型的数据
判断字典是否为空
if dic.isEmpty{
print(“空”)
}
if dic.count == 0{
print(“空”)
}
字典的遍历
for (key,value) in dic{
print(“\(key):\(value)”)
}
获取字典所有键
for i in dic.key{
print(i)
}
获取字典所有值
for i in dic.value{
print(i)
}
添加键值对
dic[1] = “FOUR”
添加的键如果在字典中不存在,该方法相当于添加,如果添加的键在字典中存在,该方法相当于修改
删除
dic[1] = nil //删除指定键的值
dic.removeValueForKey(1) //删除指定键的值
dic.removeAll() //删除所有
/********************【集合】***********************/
//集合 -> Set
//集合中可以存放多个相同类型的数据,存放的数据是无序的,集合中存放的数据不能重复
创建空集合
var set1:Set<Int> = Set<Int>()
var set2:Set<String> = []
创建简单集合
var set3:Set<Int> = [1,2,3,2,1,2,1,8,66,44,4,5,1]//如果集合中存在重复数据,系统会自动删除
print(set3)
print(set3.count)
插入数据
set3.insert(10)
删除
set3.removeFirst()
set3.remove(10)
print(set3)
遍历
for i in set3.sort(){
print(i)
}
6 字典和集合——《Swift3.0从入门到出家》的更多相关文章
- 5 数组 Swift/Object-C ——《Swift3.0从入门到出家》
Swift中数组是一种数据结构,用来存放多个形同类型的数据结构,数据在数组内的存放是有序的,存进来的数据个读出来的顺序相同 Object-C 中数组能够存放任意类型的数据类型为[AnyObject] ...
- 10 结构体和类 - —— 《Swift3.0 从入门到出家》
Swift中的面向对象5个要素:枚举.结构体.类.协议.扩展 面向对象研究的是对象,完成一件事情需要多个对象参与,是生活的映射 Swift中结构体和类非常相似,也就是结构体能完成类的所有功能.结构体是 ...
- 9 闭包——《Swift3.0从入门到出家》
8 闭包 Swift语言中可以使用一块独立代码块替代函数的定义,称独立的代码块为闭包 闭包格式为: {(参数列表)->返回值类型 in 执行语句 } 例子: <1>使用闭包实 ...
- 8 函数类型——《Swift3.0从入门到出家
Swift语言中每一个函数都有它特定的数据类型,称其为函数类型 函数类型和基本数据类型一样,可以定义变量或者常量,可以定义函数形参,也可以做为函数的返回值类型 函数类型的格式为:参数列表的数据类型—& ...
- 7 函数——《Swift3.0从入门到出家
6 函数 函数就是对某个功能的封装,一个swift程序可能由多个函数组成 swift中定义函数的格式: func 函数名称(参数列表) —>函数返回值类型{ 函数体 return } 函数定义要 ...
- 4 字符串 Swift/Objective -C ——《Swift3.0从入门到出家》
4 字符串 Swift and Object-C 字符串由多个字符组成,使用 “” 引起的内容 swift语言中提供了两种字符串:可变字符串和不可变字符串 可变字符串:字符串的内容可以修改,字符串 ...
- 3 循环语句——《Swift3.0从入门到出家》
3 循环语句 当一段代码被多次重复利用的使用我们就使用循环 swift提供了三种形式的循环语句 1.while 循环 2.repeat — while 循环 3.for — in 循环 while 循 ...
- 2 分支语句——《Swift3.0 从入门到出家》
2 分支语句 当程序面临多个选择,每一个选择都会执行不同的代码块,这个时候就要使用分支语句.常见的分支语句有: if 选择语句:if... if…else if…elseif…else if是现实生活 ...
- Python入门系列(四)别再傻傻分不清:列表、元组、字典、集合的区别
总结分析列表.元组.字典.集合的相同与区别之处,只有彻底分清之后,就会在应用的时候,得心应手. 四句话总结 列表是一个有序且可更改的集合,允许重复成员. 元组是一个有序且不可更改的集合,允许重复成员. ...
随机推荐
- SQL查询以某个字母开头
select * from a where left(a.name, 1)='H'; 或 select * from a where a.name REGEXP ''^(B|S)'';
- UVA 1640 The Counting Problem(按位dp)
题意:给你整数a.b,问你[a,b]间每个数字分解成单个数字后,0.1.2.3.4.5.6.7.8.9,分别有多少个 题解:首先找到[0,b]与[0,a-1]进行区间减法,接着就只是求[0,x] 对于 ...
- 使用nagios检测windows服务器
1.安装nagios windows客户端 下载NSClient++的安装包,注意根据实际的32/64CPU来下载 下载地址 http://sourceforge.net/projects/nscpl ...
- Merge k Sorted Lists, k路归并
import java.util.Arrays; import java.util.List; import java.util.PriorityQueue; /* class ListNode { ...
- ReflectionZ_测试_01
1.Java代码 public class TreflectionZ { public static void main(String[] args) throws Exception { Class ...
- 带你彻底明白 Android Studio 打包混淆
前言 在使用Android Studio混淆打包时,该IDE自身集成了Java语言的ProGuard作为压缩,优化和混淆工具,配合Gradle构建工具使用很简单.只需要在工程应用目录的gradle文件 ...
- js进阶---12-12、jquery事件委托怎么使用
js进阶---12-12.jquery事件委托怎么使用 一.总结 一句话总结:通过on方法(事件委托),给要绑定事件的元素的祖先绑定事件,从而达到效果. 1.事件委托是什么? 通过事件冒泡,让子元素绑 ...
- CSLA验证规则总结
CSLA业务规则 验证规则所在空间: Csla.Rules 基类 BusinessBase 的属性 BusinessRules 中记录了业务类的验证规则 验证规格的写法 private class ...
- python中zip()函数的用法
一. 定义 zip()函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,这样做的好处是节约了不少内存 如果各个迭代器的元素个数不一致,则返回列表长度与最 ...
- openvswitch的原理和常用命令
一.Openvswitch工作原理 openvSwitch是一个高质量的.多层虚拟交换机,使用开源Apache2.0许可协议,由 Nicira Networks开发,主要实现代码为可移植的C代码.它的 ...