Swift调用OC之NSDictionary

//*************************************

//

// Swift调用OCNSDictionary

//

// 1.NSArrayArray的互相转换

// 2.NSDictionary初始化

// 3.NSDictionary常用的属性和方法

//  --获得成员个数

//  --获取KeyValue组成的数组(swiftDictionary无此方法)

//  --使用keysSortedByValueUsingComparator方法将key排序,获得新数组(swiftDictionary无此方法)

//  --获得单一键值(swiftDictionary无此方法)

//  --获得多个键值(swiftDictionary无此方法)

//

//*************************************

 

import Foundation

 

//**************    **************

 

let swiftDict001 : Dictionary<String, String>= ["key1":"value1","key2":"value2"]

let nsDict001 : NSDictionary= swiftDict001

nsDict001.allKeys                      //["key1", "key2"]

nsDict001.allKeysForObject("value1")   //["key1"]

nsDict001.allValues                    //["value1", "value2"]

 

//NSDictionary转换为Dictionary后,在输出时需要指定成员类型为AnyObject类型--不指定,Swift也能识别..=.=

let swiftDict002 = nsDict001as Dictionary

for (key, value:AnyObject)in swiftDict002{

    println("\(key):\(value)")

}

 

for (key, value) inswiftDict002 {

    println("\(key):\(value)")

}

 

//==========     NSDictionary初始化     ==========

let nsDict003 = NSDictionary(object:"value1", forKey: 001)

let nsDict004 = NSDictionary(objects: ["value1","value2"], forKeys: [001,002]) //一次性创建多个

let swiftDict003 = ["A":"value1","C":"value3","B":"value2"]

let nsDict005 = NSDictionary(dictionary:swiftDict003)

 

 

//==========     NSDictionary常用的属性和方法    ==========

//获得成员个数

swiftDict002.count

nsDict001.count

 

//获取KeyValue组成的数组(swiftDictionary无此方法)

nsDict001.allKeys

nsDict001.allValues

 

//使用keysSortedByValueUsingComparator方法将key排序,获得新数组(swiftDictionary无此方法)

let sortKeys = nsDict005.keysSortedByValueUsingComparator({($0 as String).compare($1 as String)})

println("\(sortKeys)"//[A, B, C]---由小到大排序

 

//获得单一键值(swiftDictionary无此方法)

nsDict005.objectForKey("A")!   //"value1"

nsDict005["A"]!                //"value1"

 

//获得多个键值(swiftDictionary无此方法)

nsDict005.objectsForKeys(["A","D","B"],notFoundMarker: "NotFound") //["value1","NotFound", "value2"]


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值