我有一个数组
var cinema = Array(repeating: Array(repeating: 0, count: 30), count: 5)
用户可能会输入一些如下的值
cinema[1][20] = 5 cinema[1][21] = 6
现在,我想找出所有的nun 0值和它的索引。我想也许可以通过for循环来完成,但这会花费更多的时间。有没有更简单的方法?比如array.filter?
iyzzxitl1#
cinema.map { $0.enumerated().filter { $0.element != 0 } }
9gm1akwq2#
来自@Jessy的代码正确。
此外,还可以尝试以下操作:
for (i, row) in cinema.enumerated() { for (j, cell) in row.enumerated().filter({$0.element != 0 }) { print("m[\(i),\(j)] = \(cell)") } }
2条答案
按热度按时间iyzzxitl1#
9gm1akwq2#
来自@Jessy的代码正确。
此外,还可以尝试以下操作: