Swift 3数组-在其他数组的帮助下删除多个元素

Kru*_*nal -1 arrays closures ios swift swift3

斯威夫特3:
我有两个数组,一个数组是dictionary(json)的数组,另一个数组是索引Path(具有元素行和节的集合类型Index)的索引(Int值)。借助于第二个数组的索引行,我需要从第一个数组中删除元素。

var arrayString = [ // Array with Json elements
  { "name" : "A" }, 
  { "name" : "B" }, 
  { "name" : "C" }, 
  { "name" : "D" }, 
  { "name" : "E" }, 
  { "name" : "F" }, 
  { "name" : "G" }, 
  { "name" : "H" } 
]
Run Code Online (Sandbox Code Playgroud)

现在第二个数组(将从第一个数组中删除)

var arrayIndex = [ 2, 3, 5 ] // Array with 
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?我想要像这样的结果数组

var arrayString = [ 
       { "name" : "A" }, 
       { "name" : "D" }, 
       { "name" : "F" }, 
       { "name" : "G" }, 
       { "name" : "H" } 
    ]
Run Code Online (Sandbox Code Playgroud)

Nir*_*v D 5

您的数组arrayIndex看起来像Int不是的Array IndexPath

arrayIndex.sorted(by: >).forEach { if $0 < self.arrayString.count { self.arrayString.remove(at: $0) } }  
Run Code Online (Sandbox Code Playgroud)

如果arrayIndex为,IndexPath则使用row属性从数组中删除对象。

arrayIndex.sorted(by: { $0.row > $1.row }).forEach { if $0.row < self.arrayString.count { self.arrayString.remove(at: $0.row) } }  
Run Code Online (Sandbox Code Playgroud)