我需要使用for循环来创建一个二维数组。到目前为止" + ="和.append没有产生任何结果。这是我的代码。请原谅匆忙变量命名。
let firstThing = contentsOfFile!.componentsSeparatedByString("\n")
var secondThing: [AnyObject] = []
for i in firstThing {
let temp = i.componentsSeparatedByString("\"")
secondThing.append(temp)
}
这个想法是它获取csv文件的内容,然后分隔各行。然后它尝试用引号分隔每一行。这就是出现问题的地方。我成功地将引号分隔数组(存储在temp中),但是,我无法使用for循环在一个数组(即2d数组)中创建这些数组。上面的代码生成错误。有没有人有如何构建这个二维数组的答案?
答案 0 :(得分:1)
您可以使用更高阶函数来执行此操作...
let twoDimensionalArray = contentsOfFile!.componentsSeparatedByString("\n").map{
$0.componentsSeparatedByString("\"")
}
map函数接受一个项目数组,并将每个项目映射到另一个类型。在这里我将第一个数组中的字符串映射到pf字符串的数组中,从而创建一个二维数组。
这将推断创建的数组类型,因此无需放置[[String]]
。
你去......