首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >迅速将新列附加到数组中

迅速将新列附加到数组中
EN

Stack Overflow用户
提问于 2019-07-10 18:52:06
回答 2查看 301关注 0票数 0

我想逐行组织多维数组。我有一个函数,它从一个主数组创建了3个数组。我希望以列的形式将这些子数组添加到新数组中。

我尝试了以下几点:

代码语言:javascript
复制
/* Note

-subArray is a data structure where i have 3 values stored at each 
index index. these are named data1, data2, data3. I'm accessing them 
with the line chamberOne.append(thing.data1). this is referenced 
from tempCount's data. 

- data structure: 
at index # 1
 -data1
 -data1
 -data3

*/


static func subArray()->[String]
{
   var temp = mainArray[0...11]
   let tempCount = Array(temp)
   var returnArr: [String] = []

   var chamberOne: [String] = []
   for thing in tempCount
   {
      chamberOne.append(thing.data1)
   }
   // i have 2 more functions built the same as chamberOne, but they 
   //are named chamberTwo and chamberThree

   //as of right now I am appending like this
   returnArr + chamberOne + chamberTwo + chamberThree
  // this brings all the data into a single dimension array. 
}

我想要一种将chamberOnechamberTwochamberThree追加为列或行的方法,这两种方法都可以,我只是希望通过在多维数组(returnArr)中添加一个一维数组(chamberOne),将某种形式的组织形式添加到多维空间中。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-07-10 19:07:57

假设有两个数组,如下所示:

代码语言:javascript
复制
var arr1 = ["a", "b", "c"]
var arr2 = ["1", "2", "3"]

现在,我们创建一个包含其他数组的数组,如:

代码语言:javascript
复制
var multiDimArray = [[String]]() //Array of subarrays

现在我们可以将这两个数组添加到multiDimArray中。

代码语言:javascript
复制
multiDimArray.append(arr1)
multiDimArray.append(arr2)

如果我们打印multiDimArray,就会得到[["a", "b", "c"], ["1", "2", "3"]]

如果我们需要第一个“行”,我们可以通过multiDimArray[0]获得它,这将给我们["a", "b", "c"]

票数 0
EN

Stack Overflow用户

发布于 2019-07-10 19:11:41

如果我正确理解了你的问题,你需要一个[[String]],又名Array of Arrays of String。下面是我将如何修改您的函数以解释这一点:

代码语言:javascript
复制
static func subArray() -> [[String]]
{
   var temp = mainArray[0...11]
   let tempCount = Array(temp)
   var returnArr: [[String]] = []

   var chamberOne: [String] = []

   for thing in tempCount
   {
      chamberOne.append(thing.data1)
   }

   returnArr.append(chamberOne)

   //Initialise chamberTwo and chamberThree here. Then append to the 2D array.
   returnArr.append(chamberTwo)
   returnArr.append(chamberThree)

   //The returnArr now looks like this [chamberOne, chamberTwo, chamberThree]
   returnArr
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56976971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档