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入门系列(四)别再傻傻分不清:列表、元组、字典、集合的区别
总结分析列表.元组.字典.集合的相同与区别之处,只有彻底分清之后,就会在应用的时候,得心应手. 四句话总结 列表是一个有序且可更改的集合,允许重复成员. 元组是一个有序且不可更改的集合,允许重复成员. ...
随机推荐
- C++中的内存区[译文]
C++ 中的内存区 Const Data: The const data area stores string literals and other data whose values are kno ...
- 基于 CodeIgniter 的各类开源项目大全
名称:STBlog 介绍:STBlog 是一套由CI中国社区驱动,基于Codeigniter MVC 框架编写的多权限博客系统,轻巧/快速/安全/易拓展/界面友好是它的最大特点. 官方:http:// ...
- Mac 使用技巧分享
1. 快捷键开启speech功能: System Preferences -> Ditaction&Speech ->Text to Speech ->Select 'Spe ...
- springBean获取的几种方法
1.通过FileSystemApplicationContext来获取(不常用,因为要spring配置文件的绝对路径) 2.通过ClassPathXmlApplicationContext来获取(常用 ...
- Gogs/Gitea 在 docker 中部署
注:Gitea是Gogs的一个分支版本,由多个维护者开发,支持搜索.lfs等,但是BUG较多,稳定性似乎没有Gogs好. #### 安装 ####// Gogs$ docker pull gogs/g ...
- SpringCloud分布式开发理解
谈到SpringCloud最新接触到的可能就是那五大"神兽",之前最先接触分布式开发是通过dubbo的RPC远程过程调用,而dubbo给我得感觉就是:虽然所有的主机物理上分布了,但 ...
- easyui-textbox高为0
之前在项目中也遇到过,一段时间没遇到这种问题居然又忘记了,想着还是在博客中记录一下,方便自己记忆,也供大家参考. 大家是否也遇到过easyui-textbox高为0的情况呢 像这样: 用户名:< ...
- python----标准库概要
操作系统接口 os模块提供了不少与操作系统相关联的函数. >>> import os >>> os.getcwd() # 返回当前的工作目录 'C:\\Python ...
- python----模块知识拓展
1.hashlib ------configpraser-------- xml hashlib 模块导入:import hashlib 模块说明:用于将信息加密,明文变成密文 功能说明 MD5算法 ...
- jfinal微信支付
private static final String appid = PropKit.get("appid"); //应用ID private static final Stri ...