Итак, если строка не является NilLiteralConvertible ... что возвращают некоторые строковые функции?

Давайте предположим следующий код:

let url = "http://%20abc"
let urlString = url.stringByRemovingPercentEncoding!
if urlString != nil {
    println("done")
}

stringByRemovingPercentEncoding должен вернуть необязательную строку. Итак, давайте развернем это. Что происходит, когда он на самом деле «терпит неудачу» и не возвращает строку?

String не является NilLiteralConvertible, поэтому в следующей строке есть ошибка компилятора. Я действительно смущен здесь - так что я должен сравнитьurlString с, если я предполагаю, чтоurl.stringByRemovingPercentEncoding развёртывание необязательно? Очевидно, это не работает с нуля.

Обратите внимание, что я могу оставить urlString в качестве необязательного значения, а затем развернуть его и т. Д. Дело не в этом. Дело именно в этом. Большое спасибо!

Ответы на вопрос(1)

Ваш ответ на вопрос