У меня есть дополнительный массив, и мне нужно проверить член на ноль. К сожалению, это не работает так, как я ожидал. Кажется, мне нужно развернуть его, однако во время выполнения я не знаю, является ли рассматриваемое значение String, Int, другим массивом и т. Д. c. поэтому приведение не помогает (я думаю)
var nilString: String? = nil
let arr = [1, nilString] as [Any]?
print(nilString)
print(arr?[1])
if (arr?[1] == nil) {
print("is nil") // doesn't work
}
if case Optional<Any>.none = arr?[1] {
print("nil") //would expect this one
} else { //but
print("not nil") //<-- gets printed
}
Альтернативные идеи по структуре также приветствуются.