在swift中打印2d数组的元素

时间:2015-01-20 13:22:07

标签: arrays swift 2d

我正在尝试自定义“基于页面的应用程序”模板,并且是Swift的新手(以及所有编程)。在我的ModelController.swift中,我创建了一个2D数组作为主数据源。

然而,当我去打印它或将它用作label.text时,它包括括号。我如何得到我要求的数组元素的字符串?

class ModelController: NSObject, UIPageViewControllerDataSource {

var pageData: NSArray = [[String]]()


override init() {
    super.init()
    // Create the data model.

    pageData = [["right", "wrong"], ["left", "right"]]

    println(pageData[1]) //For 
}

我不确定此文件中的其他内容是否相关,但这是另一点。

func indexOfViewController(viewController: DataViewController) -> Int {
    // Return the index of the given data view controller.
    // For simplicity, this implementation uses a static array of model objects and the view controller stores the model object; you can therefore use the model object to identify the index.
    if let dataObject: AnyObject = viewController.dataObject {
        return self.pageData.indexOfObject(dataObject)
    } else {
        return NSNotFound
    }
}

1 个答案:

答案 0 :(得分:0)

如果你只想要左,右

        println("\(pageData[1][0]), \(pageData[1][1])")

如果你真的想要"左,右"双引号包括它'

        println("\"\(pageData[1][0]), \(pageData[1][1])\"")

你得到结果的原因是因为pageData [1]不是一个字符串,它是一个NSArray。由于NSArray符合Printable协议,因此在println中使用时会提供.description。