2016-10-01 55 views
-2

为什么我们在创建范围时必须加上感叹号?SWIFT:为什么我们必须将惊叹号放在:str.characters.index(of:“”)!

例子:

var str = "joe satriani" 
var range = str.startIndex..<str.characters.index(of: " ")! 

如果我不把它放在我得到一个错误。

+0

的可能的复制[什么是 “展开值” 斯威夫特?](http://stackoverflow.com/questions/24034483/what-is-an-unwrapped-value-in-swift) – ozgur

+4

读关于Swift中的Optionals – sasquatch

回答

0

如果字符串中没有空格,则可能没有索引" ",因此返回nil

var str = "stringwithnospaces" 
var range = str.startIndex..<str.characters.index(of: " ") // nil 
相关问题