2016-04-01 4 views
-1

У меня есть переменная URL объявлены как этотконкатенации необязательными и строку

var url:String! 
url = 'hello' 

тогда я базовый URL объявляется следующим образом:

var baseUrl:String 
baseUrl = http://google.com/ 

Попытка объединить эти 2 значения вместе, как

if let tmpurl = url { 
    println(baseUrl + tmpurl); 
} 

печатает

http://google.com/Optional('hello') 

Почему в выходе имеется дополнительная опция? Я подумал, что часть let разворачивает опцию

+2

опечаток в вашем вопросе (неправильные цитаты/нет цитат) приводит меня к мысли, что это не ваш точный код. Ввод кода на игровой площадке (при исправлении кавычек) приводит к 'http: // google.com/hello' для меня – Paulw11

+0

Вам не нужно разворачивать' url' в любом случае, поскольку это неявно разворачивается необязательно – Paulw11

ответ

0

Самое первое, что вы используете старую версию Quick. Обновите до 2.1. Во-вторых, это связано с тем, что вы развернули переменную url, но это не требуется. Так обновить свой код, как:

Для быстрых 2,0

var url:String? 
url = 'hello' 

var baseUrl:String? 
baseUrl = http://google.com/ 

if let tmpurl = url { 
    print(baseUrl! + tmpurl); 
} 
Смежные вопросы