Сначала необходимо указать размер первого измерения. Если вы точно знаете, что у вас будет n
массив, вы можете решить проблему следующим образом:
var myList: [[String]] = .init(repeating: [], count: n)
// which is shorthand for
var myList: [[String]] = Array(repeating: [], count: n)
// which can be rewritten like
var myList = Array<[[String]]>(repeating: [], count: n)
И вы можете использовать его следующим образом:
var myList: [[String]] = .init(repeating: [], count: 4)
myList[0].append("a")
myList[1].append("b")
myList[1].append("c")
myList[2].append(contentsOf: ["d", "f"])
myList[2].insert("e", at: 1)
print(myList)
> [["a"], ["b", "c"], ["d", "e", "f"], []]
Или, если вы знаете, что это будет матрица NxM, вы также можете сделать
var myList: [[String]] = .init(repeating: .init(repeating: "", count: m), count: n)