Swift字典总结

来源:互联网 发布:数控车床圆弧编程格式 编辑:程序博客网 时间:2024/04/29 16:42
////  main.swift//  Swift字典总结////  Created by Goddog on 15/7/14.//  Copyright (c) 2015年 Goddog. All rights reserved.//import Foundationprintln("字典是一种存储相同类型多重数据的存储器。每个值(value)都关联独特的键(key),键作为字典中的这个值数据的标识符。和数组中的数据项不同,字典中的数据项并没有具体顺序。我们在需要通过标识符(键)访问数据的时候使用字典")//MARK: - 创建字典var dic:Dictionary<String,String>=["三国演义":"罗贯中","水浒传":"施耐庵","红楼梦":"曹雪芹","西游记":"吴承恩"]var dic1 = ["魏国":"曹操","蜀国":"刘备","吴国":"孙权"]println("创建字典方法一:\(dic),创建字典方法二:\(dic1)")//构造方法创建字典var gzfa = Dictionary<Int,String>()//MARK: - 访问字典var name = dic["三国演义"]println("根据字典的键得到值:\(name)")//MARK: - 向字典中添加建值var myDict : Dictionary<String,String>myDict = Dictionary<String,String>()//添加myDict["孔子"] = "孟子"println("创建一个字典并添加数据:\(myDict)")//修改myDict.updateValue("论语", forKey: "孔子")println("修改之后是:\(myDict)")//删除//myDict.removeValueForKey("孔子")myDict["孔子"] = nilprintln("删除之后是:\(myDict)")//MARK: - 遍历字典for (key,value) in dic{    println("键是:\(key),值是:\(value)")}//或for t in dic1{    println("键是:\(t.0),值是:\(t.1)")}//单独访问keyfor key in dic.keys{    println("key=\(key)")}//单独访问valuefor value in dic.values{    println("value=\(value)")}var keys = Array(dic.keys)var values = Array(dic.values)println("key集合是:\(keys)")println("values集合是:\(values)")//MARK: - 字典类型的赋值和拷贝行为/*注意:字典和数组的拷贝是不同的1.无论何时将一个字典实例赋给一个常量或变量,或者传递给一个函数或方法,这个字典会即会在赋值或调用发生时被拷贝。2.如果字典实例中所储存的键(keys)和/或值(values)是值类型(结构体或枚举),当赋值或调用发生时,它们都会被拷贝。相反,如果键(keys)和/或值(values)是引用类型,被拷贝的将会是引用,而不是被它们引用的类实例或函数*/myDict["老子"] = "道德经"var books = myDictprintln("myDict是:\(myDict),books是:\(books)")myDict.updateValue("道家", forKey: "老子")println("myDict是:\(myDict),books是:\(books)")
字典是一种存储相同类型多重数据的存储器。每个值(value)都关联独特的键(key),键作为字典中的这个值数据的标识符。和数组中的数据项不同,字典中的数据项并没有具体顺序。我们在需要通过标识符(键)访问数据的时候使用字典创建字典方法一:[红楼梦: 曹雪芹, 西游记: 吴承恩, 三国演义: 罗贯中, 水浒传: 施耐庵],创建字典方法二:[吴国: 孙权, 魏国: 曹操, 蜀国: 刘备]根据字典的键得到值:Optional("罗贯中")创建一个字典并添加数据:[孔子: 孟子]修改之后是:[孔子: 论语]删除之后是:[:]键是:红楼梦,值是:曹雪芹键是:西游记,值是:吴承恩键是:三国演义,值是:罗贯中键是:水浒传,值是:施耐庵键是:吴国,值是:孙权键是:魏国,值是:曹操键是:蜀国,值是:刘备key=红楼梦key=西游记key=三国演义key=水浒传value=曹雪芹value=吴承恩value=罗贯中value=施耐庵key集合是:[红楼梦, 西游记, 三国演义, 水浒传]values集合是:[曹雪芹, 吴承恩, 罗贯中, 施耐庵]myDict是:[老子: 道德经],books是:[老子: 道德经]myDict是:[老子: 道家],books是:[老子: 道德经]Program ended with exit code: 0


0 0