Я предполагаю, что по неопределенному вы имеете в виду пустое - так что это массив из трех элементов, где каждый элемент является (пустым) массивом. Вы можете инициализировать следующим образом:
var monthNames:[[String]] = [ [], [], [] ]
или:
var monthNames = [[String]](count: 3, repeatedValue: [])
Side Примечание: если вы хотите, чтобы инициализировать массивы позже, помните, что вы не можете сделать это:
var array = monthNames[0]
array.append("another test")
, потому что массивы являются типами значений, поэтому при назначении переменной выполняется копирование исходного массива. Любые сделанные вами изменения являются локальными для этой переменной, поэтому не отражаются в исходном массиве.