如何将[Int]转换为int?

Mar*_*ina 0 swift swift4

我有这样的代码

let index = tableView.selectedRowIndexes.map { Int($0) }
        arrDomains.remove(at: index)
Run Code Online (Sandbox Code Playgroud)

但得到错误:

无法将'[Int]'类型的值转换为预期的参数类型'Int'

如何将[Int]转换为int?

Swift 4,macOS

vad*_*ian 5

索引es是复数,表示有多个值

selectedRowIndexes返回一个IndexSet对象.你可以使用,forEach但你必须反转索引,否则你会得到着名的变异 - 迭代 - 超出范围的错误.

let indexes = tableView.selectedRowIndexes
indexes.reversed().forEach{ arrDomains.remove(at: $0) }
Run Code Online (Sandbox Code Playgroud)

映射indexSet[Int]是多余的.

是一种优化remove(at indexes: IndexSet)方法.