arrays - 从 NSUserDefaults 列表中解开字符串

标签 arrays swift nsuserdefaults

我对 swift 和展开概念非常陌生。我正在尝试将字符串数组存储到 NSUserDefaults 中。将结果打印到控制台后,数组显示为

[Optional("VarOne"), Optional("VarTwo")] //the two test variables stored in the array

目标是实现:

["VarOne", "VarTwo"]

我做了很多测试以获得类似的解决方案。我的代码如下:

    let defaults = NSUserDefaults.standardUserDefaults()

    if let array = defaults.arrayForKey("listOfPlayers"){

        for i in array{
        print(i)
        }

    }

我的主要问题是如何在这种情况下解开变量。澄清一下,这些是字符串变量。

编辑:我包含了将数组添加到 NSUserDefaults 的代码

let userDefaults = NSUserDefaults.standardUserDefaults()
        userDefaults.setObject(listOfPlayers, forKey: "listOfPlayers")
        userDefaults.synchronize()

最佳答案

试试这个:

   let defaults = NSUserDefaults.standardUserDefaults()

if let array = defaults.arrayForKey("listOfPlayers"){

    for i in array{
      let io = i as! AnyObject
    print(io)
    }

}

关于arrays - 从 NSUserDefaults 列表中解开字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37724897/

相关文章:

ruby-on-rails - 将数组传递给 hidden_​​field ROR

ios - 在 Swift 中子类化 Parse 的 PFUser

ios - 裁剪字符 - iOS11 - 警报对话框询问

ios - 我可以使用 Realm 来存储所有数据,还是应该使用 NSUserDefaults 来存储用户名/密码?

iOS swift 3 : Share Data from share extension to Host App

c - 使用线程查找二维数组中的最大数

javascript - 初始化 "complex"嵌套的 javascript/对象

c++ - 如何将数组大小传递给 C++ 中的函数

ios - 如何为 UIView 的任何特定边缘添加虚线边框?

iphone - NSUserDefaults 记住 View