swit开发Dictionary详细使用

//

//  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.

    }

 

 

}

 

转载于:https://www.cnblogs.com/freeleader/p/7461988.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值