快速展开非可选类型

威玛·韦拉瓦萨(Wimal Weerawansa)

我有快速可选的未包装变量,phone但是当我尝试使用此变量时,它给出了可选的包装,如下所示

if let phone = self!.memberItem!.address?.mobile {
   print(phone) // Optional(+123232323)
   //error "Cannot force unwrap non optional type 'String'".
   print(phone!)
}

struct Address{

  var tel: String?
  var fax: String?
  var mobile: String?
  var email: String?

}

phone 包含可选值,但是当我尝试强制打开此可选内容时,它将引发错误“无法强制打开非可选类型'String'”。

js

没错,电话在打印时不应该是可选类型。正如Hamish上面评论的那样,在将值分配给mobile属性时,听起来好像出了点问题

这是一个简单的例子:

struct Person {
    let address: Address?
}

struct Address {
    let mobile: String?
}

let dude: Person? = Person(address: Address(mobile: "555-1234"))

if let phone = dude?.address?.mobile {
    print(phone) // Prints plain "555-1234", without "Optional"
}

(如果您使用的是XCode,请phone在编辑器中将光标放在变量上时检查它能告诉您有关变量类型的信息。)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

快速展开可选内容

来自分类Dev

致命错误:展开可选值时意外发现nil(无法强制展开非可选类型'String'的值)

来自分类Dev

快速展开多个可选项

来自分类Dev

无法强制将非可选类型“可达性”的展开值设为swift 5

来自分类Dev

快速打印非可选时的可选值

来自分类Dev

可选类型String的值?没有展开

来自分类Dev

快速展开可选值时发生致命错误

来自分类Dev

为什么标签的默认类型是强制展开的可选?

来自分类Dev

展开NSData类型的可选值时意外找到nil

来自分类Dev

为什么标签的默认类型是强制展开的可选?

来自分类Dev

Swift中的非可选类型是否应该包含可选类型?

来自分类Dev

Swift中的非可选类型是否应该包含可选类型?

来自分类Dev

非可选类型...更好的说法呢?

来自分类Dev

带有混合类型的 Swift 字典(可选和非可选)

来自分类Dev

Mypy 可选 dict 错误,具有非可选的预期类型

来自分类Dev

快速,可选的展开,如果有条件则反转

来自分类Dev

快速解析JSON会引发“致命错误:在展开可选值时意外发现nil”

来自分类Dev

快速的搜索栏和表格视图-致命错误:在展开可选值时意外发现nil

来自分类Dev

展开一个可选值NSDefautlts时发现nil的快速问题

来自分类Dev

Swift 3可选展开

来自分类Dev

快速的Optionals双展开

来自分类Dev

快速展开问题

来自分类Dev

隐式展开的可选类型-可能是拼写错误?

来自分类Dev

为什么Swift闭包变量类型不能隐式展开为可选?

来自分类Dev

'IBOutlet'属性具有非可选类型'UIButton'

来自分类Dev

无法强制解开非可选类型的值:避免使用“ Optional()”

来自分类Dev

从另一种类型创建“可选”类型的快速方法?

来自分类Dev

为什么在Swift中可以将非可选值分配给可选类型?

来自分类Dev

快速链接可选

Related 相关文章

  1. 1

    快速展开可选内容

  2. 2

    致命错误:展开可选值时意外发现nil(无法强制展开非可选类型'String'的值)

  3. 3

    快速展开多个可选项

  4. 4

    无法强制将非可选类型“可达性”的展开值设为swift 5

  5. 5

    快速打印非可选时的可选值

  6. 6

    可选类型String的值?没有展开

  7. 7

    快速展开可选值时发生致命错误

  8. 8

    为什么标签的默认类型是强制展开的可选?

  9. 9

    展开NSData类型的可选值时意外找到nil

  10. 10

    为什么标签的默认类型是强制展开的可选?

  11. 11

    Swift中的非可选类型是否应该包含可选类型?

  12. 12

    Swift中的非可选类型是否应该包含可选类型?

  13. 13

    非可选类型...更好的说法呢?

  14. 14

    带有混合类型的 Swift 字典(可选和非可选)

  15. 15

    Mypy 可选 dict 错误,具有非可选的预期类型

  16. 16

    快速,可选的展开,如果有条件则反转

  17. 17

    快速解析JSON会引发“致命错误:在展开可选值时意外发现nil”

  18. 18

    快速的搜索栏和表格视图-致命错误:在展开可选值时意外发现nil

  19. 19

    展开一个可选值NSDefautlts时发现nil的快速问题

  20. 20

    Swift 3可选展开

  21. 21

    快速的Optionals双展开

  22. 22

    快速展开问题

  23. 23

    隐式展开的可选类型-可能是拼写错误?

  24. 24

    为什么Swift闭包变量类型不能隐式展开为可选?

  25. 25

    'IBOutlet'属性具有非可选类型'UIButton'

  26. 26

    无法强制解开非可选类型的值:避免使用“ Optional()”

  27. 27

    从另一种类型创建“可选”类型的快速方法?

  28. 28

    为什么在Swift中可以将非可选值分配给可选类型?

  29. 29

    快速链接可选

热门标签

归档