Como encontrar o índice de um item em um array multidimensional com rapidez?

Digamos que eu tenho essa matriz:

let a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

Agora eu quero algo assim:

    public func indicesOf(x: Int, array: [[Int]]) -> (Int, Int) {
        ...
    }

para que eu possa chamar assim:

indicesOf(7, array: a) // returns (2, 0)

Claro, eu posso usar:

for i in 0..<array.count {
    for j in 0..<array[i].count {
        if array[i][j] == x {
            return (i, j)
        }
    }
}

Mas isso não é nem perto de swifty!

Eu quero uma maneira de fazer isso que é rápido. Acho que talvez eu possa usarreduce oumap?

questionAnswers(2)

yourAnswerToTheQuestion