Swift,如何使用带有索引的数组对另一个数组重新排序

时间:2018-12-27 05:57:50

标签: arrays swift indexing

在Swift中,我有一个索引数组,我想使用它来排列一个值数组(在Matlab中非常容易做到),但是却找不到一种简单的方法(使用for循环容易,但我正在寻找一种更有效的方法。

例如:

var indices = [1,0,2]
var values = ["A","B","C"]
var permute = values[indices]
// Hoping to print: permute = ["B","A","C"]

4 个答案:

答案 0 :(得分:7)

SelectionChanged

答案 1 :(得分:1)

使用compactMap的替代解决方案,

let indices = [1, 0, 2]
var values = ["A", "B", "C"]
let permute = indices.compactMap({ values[$0] })
print(permute)

答案 2 :(得分:0)

您可以将keys数组映射到values数组。

var keys = [1,0,2]
var values = ["a","b","c"]
print(keys.map({values[$0]}))

答案 3 :(得分:0)

windows.create({"url": url, "incognito": true});