• 字典的介绍

    • 字典允许按照某个键来访问元素
    • 字典是由两部分集合构成的,一个是键(key)集合,一个是值(value)集合
    • 键集合是不能有重复元素的,而值集合是可以重复的,键和值是成对出现的
    • Swift中的字典
      • Swift字典类型是Dictionary,也是一个泛型集合

    字典的初始化

    • Swift中的可变和不可变字典

      • 使用let修饰的数组是不可变字典
      • 使用var修饰的数组是可变字典
    // 定义一个可变字典
    var dict1 : [String : NSObject] = [String : NSObject]() // 定义一个不可变字典
    let dict2 = ["name" : "why", "age" : 18]
    • 在声明一个Dictionary类型的时候可以使用下面的语句之一
    var dict1: Dictionary<Int, String>
    var dict2: [Int: String]
    • 声明的字典需要进行初始化才能使用,字典类型往往是在声明的同时进行初始化的
    // 定时字典的同时,进行初始化
    var dict = ["name" : "why", "age" : 18] // swift中任意对象,通常不使用NSObject,使用AnyObject
    var dict : Dictionary<String, AnyObject>
    dict = ["name" : "why", "age" : 18]

    字典的基本操作

    // 添加数据
    dict["height"] = 1.88
    dict["weight"] = 70.0
    dict // 删除字段
    dict.removeValueForKey("height")
    dict // 修改字典
    dict["name"] = "lmj"
    dict.updateValue("lmj", forKey: "name")
    dict // 查询字典
    dict["name"]

    字典的遍历

    // 遍历字典中所有的值
    for value in dict.values {
    print(value)
    }
    // 遍历字典中所有的键
    for key in dict.keys {
    print(key)
    } // 遍历所有的键值对
    for (key, value) in dict {
    print(key)
    print(value)
    }

    字典的合并

    // 字典的合并
    var dict1 = ["name" : "yz", "age" : 20]
    var dict2 = ["height" : 1.87, "phoneNum" : "+86 110"]
    // 字典不可以相加合并
    for (key, value) in dict1 {
    dict2[key] = value
    }

iOS开发零基础--Swift教程 字典的更多相关文章

  1. iOS开发零基础--Swift教程 可选类型

    可选类型的介绍 注意: 可选类型时swift中较难理解的一个知识点 暂时先了解,多利用Xcode的提示来使用 随着学习的深入,慢慢理解其中的原理和好处 概念: 在OC开发中,如果一个变量暂停不使用,可 ...

  2. iOS开发零基础--Swift教程 字符串的利用

    字符串的介绍 字符串在任何的开发中使用都是非常频繁的 OC和Swift中字符串的区别 在OC中字符串类型时NSString,在Swift中字符串类型是String OC中字符串@"" ...

  3. iOS开发零基础--Swift教程 数组

    数组的介绍 数组(Array)是一串有序的由相同类型元素构成的集合 数组中的集合元素是有序的,可以重复出现 Swift中的数组 swift数组类型是Array,是一个泛型集合 数组的初始化 数组分成: ...

  4. iOS开发零基础--Swift教程 类型转换

    常见的类型转化符号 is : 用于判断一个实例是否是某一种类型 as : 将实例转成某一种类型 例子 // 1.定义数组 let array : [AnyObject] = [12, "wh ...

  5. iOS开发零基础--Swift篇 元组

    元组的介绍 元组是Swift中特有的,OC中并没有相关类型 它是什么呢? 它是一种数据结构,在数学中应用广泛 类似于数组或者字典 可以用于定义一组数据 组成元组类型的数据可以称为“元素” 元组的定义 ...

  6. iOS开发零基础--Swift篇 循环

    循环的介绍 在开发中经常会需要循环 常见的循环有:for/while/do while. 这里我们只介绍for/while,因为for/while最常见 for循环的写法 最常规写法 // 传统写法 ...

  7. iOS开发零基础--Swift篇:逻辑分支

    一. 分支的介绍 分支即if/switch/三目运算符等判断语句 通过分支语句可以控制程序的执行流程 二. if分支语句 和OC中if语句有一定的区别 判断句可以不加() 在Swift的判断句中必须有 ...

  8. iOS开发零基础--Swift篇:Swift中数据类型

    Swift类型的介绍 Swift中的数据类型也有:整型/浮点型/对象类型/结构体类型等等 先了解整型和浮点型 整型 有符号 Int8 : 有符号8位整型 Int16 : 有符号16位整型 Int32 ...

  9. iOS开发零基础--Swift基础篇--常量&变量的定义

    什么是常量和变量 在Swift中规定:在定义一个标识符时必须明确说明该标识符是一个常量还是变量 使用let来定义常量,定义之后不可以修改 使用var来定义变量,定义之后可以修改 常量和变量的使用注意: ...

随机推荐

  1. OpenLDAP与Apache

    1:安装部署Apache 2:在/var/www/html下,添加一个测试文件       echo test > index.html          3:在这之前,需了解Apache的账号 ...

  2. 自用debug单元

    将之前的内存查看单元小幅修改,加上文件操作和计时,组成了一个自用debug单元,使用方法如示例. 此单元便捷之处在于直接将#define DEBUG注释掉而无需改动源码,即可取消debug模式. #d ...

  3. 在xaf 14 中实现 Tonyyang原文中的action权限

    具体实现过程,主要修改了以下几个地方: 第一:角色和用户类中需要修改成SecurityStrategy的方式: 具体代码 MySecurityRole: using System; using Sys ...

  4. Git常用命令学习(2)

    1):git branch -v --查看每一个分支的最后一次提交2):git branch --merged 与 --no-merged 这两个有用的选项可以过滤这个列表中已经合并或尚未合并到当前分 ...

  5. NC 单据保存时间过长,判断数据库锁表解决办法

    SELECT s.sid, s.serial# FROM gv$locked_object l, dba_objects o, gv$session s WHERE l.object_id = o.o ...

  6. 用命令查看Mysql中数据库、表的空间大小

    要想知道每个数据库的大小的话,步骤如下:1.进入information_schema 数据库(存放了其他的数据库的信息)use information_schema;2.查询所有数据的大小:selec ...

  7. ue4 模块的构建和加载

    ue4的代码是模块的形式来组织 在源码层面,一个包含*.build.cs的目录就是一个模块 这个目录里的文件在编译后都会被链接在一起,比如一个静态库lib,或者一个动态库dll. 不管是哪种形式,都需 ...

  8. appcan切换帐号无法提交SVN

     C:\Documents and Settings\Administrator\Application Data\Subversion\auth\svn.simple 

  9. Html5应用程序缓存ApplicationCache

    应用缓存机制可以参考http://www.w3school.com.cn/html5/html_5_app_cache.asp,不再赘述.利用此机制,html5游戏可以实现和native app类似的 ...

  10. configure: error: no acceptable C compiler found in $PAT 的解决方案

    configure: error: no acceptable C compiler found in $PATH See `config.log' for more details.你的机器里没有安 ...