Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/110.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何在Swift 2.0中将群集数组的元素添加到单个数组中?_Ios_Arrays_Swift2 - Fatal编程技术网

Ios 如何在Swift 2.0中将群集数组的元素添加到单个数组中?

Ios 如何在Swift 2.0中将群集数组的元素添加到单个数组中?,ios,arrays,swift2,Ios,Arrays,Swift2,我有以下阵列: var array1 = [[aruna,bala,chitra], [marya,navya,ovya], [jaya,kala,latha], [stella,taruna,unna]] var array2 = [] 如何将array1值的元素添加和删除到array2,使其仅作为元素而不是数组。 像这样: 如果我想添加2和4数组 array2 = [marya,navya,ovya,stella,taruna,unna] //Expected Output 如果我想删

我有以下阵列:

var array1 = [[aruna,bala,chitra], [marya,navya,ovya], [jaya,kala,latha], [stella,taruna,unna]]
var array2 = []
如何将array1值的元素添加和删除到array2,使其仅作为元素而不是数组。 像这样:

如果我想添加
2和4
数组

array2 = [marya,navya,ovya,stella,taruna,unna]  //Expected Output
如果我想删除
2
数组

array2 = [stella,taruna,unna] //Expected Output
我无法使用
append
array2.append(array1[[1]])
那样添加2个数组,因为错误显示:


无法在[NSArray]类型的值下标[int]类型的索引。
这是完全正确的

假设这些都是整数。为简单起见,我将使用实际数字文字:

var array1 = [[1,2,3], [4,5,6], [7,8,9], [10,11,12]]
var array2 = array1[1] + array1[3] // [4,5,6,10,11,12]
另一种方式:

var array1 = [[1,2,3], [4,5,6], [7,8,9], [10,11,12]]
var array2 = [Int]()
array2 += array1[1]
array2 += array1[3] // [4,5,6,10,11,12]
var array1 = [[1,2,3], [4,5,6], [7,8,9], [10,11,12]]
var array2 = Array([array1[1], array1[3]].flatten()) // [4,5,6,10,11,12]
另一种方式:

var array1 = [[1,2,3], [4,5,6], [7,8,9], [10,11,12]]
var array2 = [Int]()
array2 += array1[1]
array2 += array1[3] // [4,5,6,10,11,12]
var array1 = [[1,2,3], [4,5,6], [7,8,9], [10,11,12]]
var array2 = Array([array1[1], array1[3]].flatten()) // [4,5,6,10,11,12]
编辑好的,您已经更改了代码。但答案是一样的:

let aruna = "aruna"
let bala = "bala"
let chitra = "chitra"
let marya = "marya"
let navya = "navya"
let ovya = "ovya"
let jaya = "jaya"
let kala = "kala"
let latha = "latha"
let stella = "stella"
let taruna = "taruna"
let unna = "unna"

var array1 = [[aruna,bala,chitra], [marya,navya,ovya], [jaya,kala,latha], [stella,taruna,unna]]

var array2 = Array([array1[1], array1[3]].flatten())
// ["marya", "navya", "ovya", "stella", "taruna", "unna"]

因为所有的都是
String
我试过:
array2=[array1[1],array1[3]].flatte()为![String]
但它正在崩溃,没有日志。请出示您的真实代码好吗?裸
a
不是字符串;这是一个变量名。显示
a
b
c
等如何获取值。此外,当您测试我的代码时,请测试我的代码,而不是其他代码。你根本没有复制我给出的任何例子。你不能用斯威夫特随便说什么。我没有说,
as任何东西,我将整个东西包装在一个
数组(…)
中。这是有原因的。我从Parse中获取值,
a
b
c
也都是联系人姓名。我的代码对字符串的作用方式完全相同。