NSDictationary类
admin
2023-02-10 13:00:10
0

        在foundation框架中,提供一种字典类,它是由键值对构成的集合,键和值集合的元素可以可以是任何对象,但是不能nil,Foundation框架字典也分为NSDictionary 不可变字典和 NSMutableDictionary可变字典


一、NSDictationary类

        

            NSDictionary有很多方法和属性,以下是常见的:


        1、-initWithDictionary 构造器,通过swift的Dictionary创建NSDictionary对象

        2、-initWithObjects:forKeys 构造器,通过键集合和值集合创建NSDictionary对象

        3、-count 字典集合的长度

        4、-objectForKeys  通过键获得值对象

        5、allKeys 返回所有键集合


        示例

    let keyString:NSString = "1 2 3 4 5"
    var keys:NSArray = keyString.componentsSeparatedByString(" ")
    
     let valueString:NSString = "alpha bravo charlie delta echo"
      var values:NSArray = valuesString.componentsSeparatedByString(" ")
        
        var dict:NSDictationary = NSDictionary(object:values,forKeys:kes)
        NSLog("%@",dict.description)
        var value:NSString = dict.objectForKey("3") as NSString
        NSLog("%@",value)
        var kys= dict.allKeys
        for item:AnyObject in kys{
            var key = item as NSString
            NSLog("%@,%@",key,dict.objectForKey(key) as NSString)
}

        




二、NSMutableDictionary类


        NSMutableDictionary类是NSDictionary类的子类,有很多方法和属性,以下是常用的:

    

        1、-setObjectForKey 

        2、-removeObjectForKey 按照键移除值


        示例

          var mutable:NSMutableDictionary = NSMutableDictionary();
           mutable.setObject("TOM",forKey:"tom@xx.com")
            mutable.setObject("BOB",forKey:"bob@xx.com")
            
            NSLog("%@",mutable.description)
            var keys= mutable.allKeys
            for item:AnyObject in keys {
                    var key = item as NSString
                    NSLog("%@,%@",key,mutable.objectForKey(key) as NSString)
}




三、NSDictionary 与  Dictionary


        NSDictionary 与 Dictionary之间的关系类似于NSArray和Array之间的关系,swift能够在底层将它们自动桥接起来,一个NSDictionary对象桥接之后的结果是[NSObject:AnyObject]


        示例:


  

      let keyString:NSString = "1 2 3 4 5"
        var keys:NSArray = keyString.componentsSeparatedByString(" ")
        let valueString:NSString = "Alpha bravo charlie delta echo"
        var values:NSArray = valueString.componentsSeparatedByString(" ")
        let foundationDict:NSDictionary = NSDictionary(objects:values,forKeys:keys)
        let swiftDict:Dictionary = foundationDict
        println(swiftDict.description)
        
        let value:AnyObject? = swiftDict["3"]
        println("value")
        for (key,value) in swiftDict {
                println("\(key):\(value)")
}


相关内容

热门资讯

今日重大发现“西南九九.可以开... 网上科普关于“西南九九有没有挂”话题很是火热,小编也是针对西南九九作*弊开挂的方法以及开挂对应的知识...
【今日要闻】“,728土豪版.... 家人们!今天小编来为大家解答,728土豪版透视挂怎么安装这个问题咨询软件客服徽9752949的挂在哪...
最新引进“皇豪互娱牛牛.可以开... 家人们!今天小编来为大家解答皇豪互娱牛牛透视挂怎么安装这个问题咨询软件客服徽4282891的挂在哪里...
今日重大发现“星禾卡五星.真的... 您好:星禾卡五星这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9784099】很多玩家在这款游...
以赛促产聚动能 智绘蓝海新蓝图 为加快建设引领型现代海洋城市,推动海洋人工智能技术成果从“赛场”迈向“市场”,聚力打造海洋人工智能大...
终于懂了“边锋老友麻将.辅助开... 家人们!今天小编来为大家解答边锋老友麻将透视挂怎么安装这个问题咨询软件客服徽4282891的挂在哪里...
重磅消息“中州游戏.是不是有挂... 您好:中州游戏这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9784099】很多玩家在这款游戏...
今日重大消息“手机麻将.辅助器... 网上科普关于“手机麻将有没有挂”话题很是火热,小编也是针对手机麻将作*弊开挂的方法以及开挂对应的知识...
今日重磅消息“快乐打筒子.怎么... 家人们!今天小编来为大家解答快乐打筒子透视挂怎么安装这个问题咨询软件客服徽9752949的挂在哪里买...
终于懂了“飞鹰互娱炸金花.开挂... 终于懂了“飞鹰互娱炸金花.开挂器?”详细开挂教程您好,飞鹰互娱炸金花这个游戏其实有挂的,确实是有挂的...