ios - 如何在可选字符串数组中解包 NSMutableDictionary.allkeys

标签 ios swift nsarray nsdictionary optional-variables

我正在尝试获取 NSMutableDictionary 的所有键值作为字符串数组。我正在使用此 myNSMutableDictionary.allkeys 将值作为数组获取,但我找不到解包键值的方法。

这是我目前尝试过的:

for (key, _) in NSMutableDictionary {
        println("THIS IS MY NEW KEY\(key)")
    }

我试过了

var myArray:NSArray =  myNSMutableDictionary.allKeys
var string:NSString? = uniqueIDArray[0] as? NSString
println("This is unwraped value\(string!)")

还有这个

var myArray:Array =  myNSMutableDictionary.allKeys
println("This is unwraped value\(myArray[0])")

我一直将值作为 Optional("kMSZgoTmiX") 而不是 kMSZgoTmiX 这是我需要的键值

谢谢大家的帮助!

最佳答案

所以你有一个字典,其中的值是字符串(并且键是某种东西,假设是字符串):

var dictionaryOfStringValues : [String:String] = /* your dictionary */

并且您想要迭代内容:

for (key, val) in dictionaryOfStringValues {
  // use key and val
}

如果您只想以一种可以轻松迭代的方式获取值:

var theValues = dictionaryOfStringValues.values

如果您坚持将 theValues 设为 Array:

   var theValuesAsAnArray = Array(dictionaryOfStringValues.values)

如果您从 NSMutableDictionary 开始,请在它首次将 Swift 代码输入到 Swift 字典中时将其转换。使用 as 变体来做到这一点。之后,纯粹的 Swift。

像这样:

  7> for (key, value) in ["a":1, "b":2] { 
  8.     println (key) 
  9.     println (value) 
 10. }    
b
2
a
1

关于ios - 如何在可选字符串数组中解包 NSMutableDictionary.allkeys,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29245840/

相关文章:

ios - 如何重构我的代码以在主线程上调用 AppDelegate?

objective-c - 比较不同 NSObject 子类的 3 个数组

ios - 无法使用文字整数访问我的 NSArray 但可以动态工作

swift - 多个 CoreData 实体的通用函数

ios - 如何使用 Parse & Swift 存储帖子的评论?

ios - 从结构中的数组中获取实际产品

ios - NSArray 中对象的说明

ios - 初始化 NSMutableDictionary

ios - 更改 ios 7+ 中的导航栏按钮间距/位置

ios - React-native 不会在模拟器中重新加载 ios 应用程序