码迷,mamicode.com
首页 > 其他好文 > 详细

swit开发Dictionary详细使用

时间:2017-09-01 10:51:01      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:mem   values   zha   create   port   after   rate   循环   enum   

//

//  ViewController.swift

//  Swift+Dictionary

import UIKit

 

class ViewController: UIViewController {

 

    override func viewDidLoad() {

        super.viewDidLoad()

        self.view.backgroundColor = UIColor.yellow;

        //创建一个空数组

        let dic1 = [Int: String]()

        print(dic1)

        //创建数组,key为int型,value为string型

        var dic2:[Int:String] = [1:"one",2:"two", 3:"three"]

        print(dic2)

        let dict3 = ["name":"DevZhang", "job":"iOSDev", "company":"VSTECS"]

        print(dict3)

        

        //访问字典

        let value1 = dic2[1];

        print(value1)

        let value2 = dict3["name"]

        print(value2)

        

        //添加数据

        let value3 = dic2.updateValue("Four", forKey: 4)

        //或者是dict2[4] = "Four"

        print(value3)

        print(value2)

        

        //修改字典

        //方法1 使用updatevalue(forkey:)增加或更新字典的内容.如果key不存在,则添加值,如果存在则修改key对应的值.格式为:dict.updatevalue(value,forkey:key)方法返回optional值

        var value4 = dic2.updateValue("TwoTmp", forKey: 2);

        print(dic2)

        print(value4)

        //方法2:通过指定的key来修改字典的值

        var value5 = dic2[3];

        print(value5)

        value5 = "ThreeTmp"//次修改方法无效

        print(dic2)

        dic2[3] = "ThreeTmp"//此修改有效

        print(dic2)

        

        //移除key-value对

        //1:使用removevalueforkey() 方法来移除字典key-value 对,如果key存在该方法返回移除的值,如果不存在返回nil.

        let valueRemove1 = dic2.removeValue(forKey: 2)

        print(valueRemove1)

        print(dic2)

        //通过指定键的值为nil来移除key-value(键-值)对

        dic2[1] = nil

        print(dic2)

        

        //遍历字典

        //1:使用for-in循环来遍历某个字典中的键值对

        for (key,value) in dict3 {

            print("字典 key \(key) - 字典 value\(value)")

        }

        //2:使用enumerate()方法来进行字典遍历,返回的是字典的索引及(key, value)对

        for (key, value) in dict3.enumerated() {

            print("字典 key \(key) - 字典(key,value) 对\(value)")

        }

        //3:

        for key in dict3.keys {

            let value = dict3[key]

            print("key = \(key),value = \(value)")

            

        }

        

        //字典转化为数组

        //提取字典的键值(key-value)对,并转换为独立的数组

        let dictkeys = [String](dict3.keys)

        for (key) in dictkeys {

            print("\(key)")

        }

        let dictValues = [String](dict3.values)

        for (value) in dictValues {

            print("\(value)")

        }

        

        //isEmpty  属性

        let empty1 = dic1.isEmpty

        print("dic1 is \(empty1)")

        

        let empty2 = dict3.isEmpty

        print("dict3 is \(empty2)")

        

        

        

        

        

        

        

        

        

        

        // Do any additional setup after loading the view, typically from a nib.

    }

 

    override func didReceiveMemoryWarning() {

        super.didReceiveMemoryWarning()

        // Dispose of any resources that can be recreated.

    }

 

 

}

 

swit开发Dictionary详细使用

标签:mem   values   zha   create   port   after   rate   循环   enum   

原文地址:http://www.cnblogs.com/freeleader/p/7461988.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!