首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有UUIDString初始化器的NSUUID

带有UUIDString初始化器的NSUUID
EN

Stack Overflow用户
提问于 2014-11-01 19:30:31
回答 3查看 5.1K关注 0票数 3

我试图创建一个具有指定值的NSUUID:

代码语言:javascript
复制
let uuidString        = "000000-0000-0000-0000-000000000000"
let beaconUUID:NSUUID = NSUUID(UUIDString: uuidString)

第二行提供了一个错误消息:

调用中的额外参数“UUIDString”

文档的角度来看,它似乎应该能工作。有什么想法吗?

我还在as String之后添加了uuidString,同样的问题。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-11-01 19:40:12

错误信息具有误导性。init?(UUIDString string: String)是一个可失败的初始化程序“,并返回一个必须解除包装的可选选项。

代码语言:javascript
复制
let beaconUUID:NSUUID = NSUUID(UUIDString: uuidString)!

或者简单的

代码语言:javascript
复制
let beaconUUID = NSUUID(UUIDString: uuidString)!

很管用。如果初始化失败,则使用可选绑定:

代码语言:javascript
复制
if let beaconUUID =  NSUUID(UUIDString: uuidString) {
    // ...
} else {
    // failed
}

有关详细信息,请参阅

票数 16
EN

Stack Overflow用户

发布于 2014-11-01 19:48:53

代码语言:javascript
复制
NSUUID(UUIDString: uuidString)

返回一个可选项,因此您也必须声明变量为可选变量。

代码语言:javascript
复制
let uuidString        = "000000-0000-0000-0000-000000000000"
let beaconUUID:NSUUID? = NSUUID(UUIDString: uuidString)
票数 0
EN

Stack Overflow用户

发布于 2015-04-04 05:21:08

其实什么是"!“在斯威普?我知道它代表的不是意思,但为什么在这种情况下它会这样使用呢?任何人都可以向我解释,我是Swift编程语言的新手。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26692315

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档