如何将变量内的数组添加到数组中

时间:2017-02-17 16:32:08

标签: swift

我有这些数组:

var inactiveLocationArray = [String]()
var activeLocationArray = [String]()

我想将它们添加到这样的数组中:

let locationArrays: [[String]] = [self.inactiveLocationArray,self.activeLocationArray]

但它给出了错误: 类型的值(NSObject) - > () - > Controller没有成员activeLocationArray

这实际上有效:

let locationArrays: [[String]] = [["test", "testas"]]

1 个答案:

答案 0 :(得分:1)

您的代码既可以编译也可以完美运行:

var inactiveLocationArray = [String]()
var activeLocationArray = [String]()
let locationArrays: [[String]] = [inactiveLocationArray,activeLocationArray]

也许它没有做你所期望的或欲望,但它确实有效。结果是一个数组数组,正如预期的那样。

  

但它给出了错误:类型的值(NSObject) - > () - > Controller没有成员activeLocationArray

那是因为您的代码位于错误的位置。所有可执行代码必须在某种函数内。你的不是。例如:

class Controller : NSObject {
    func someMethod() {
        var inactiveLocationArray = [String]()
        var activeLocationArray = [String]()
        let locationArrays: [[String]] = [inactiveLocationArray,activeLocationArray]
    }
}

如果您将let locationArrays行移出其包含的方法(此处为someMethod),请确保它不会编译。但这与数组无关。它与线路是可执行代码的事实有关,并且不能在以太网中生存。