Swift中的问号三种用法

  1. 三目运算符(Ternary Conditional Operator)
    这在大部分语言中都比较常见
    布尔值 ? "true" : "false"

  2. 可选值
    可选值?!是一对。?用在某个类型后面,可以通俗的理解为,这个值不太确实是否是这个类型,如果不是就给个nil吧;!可以理解为,一定要给个类型我,要不老子分分钟挂给你看了。😎

  3. 空合运算符(Nil Coalescing Operator) ??
    这个我在其他语言没见过。e ?? f 相当于 e != nil ? e! : f, 可选类型e不是nil时,就e!,否则为f

var e: String?
var f = "我是fuck"
e ?? f                  // `e != nil ? e! : f` , 可选类型`e`不是`nil`时,就`e!`,否则为`f`。(注意`??`前后要空格)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 关于 Swift 重要这个文档所包含的准备信息, 是关于开发的 API 和技术的。这个信息可能会改变, 根据这个文...
    无沣阅读 4,397评论 1 27
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young阅读 3,906评论 1 10
  • Hello Word 在屏幕上打印“Hello, world”,可以用一行代码实现: 你不需要为了输入输出或者字符...
    restkuan阅读 3,236评论 0 6
  • 还记得早些日子,有一次和事儿妈聊天,她提醒我,倾听自己。 于是倾听自己这个事情,我花了很长的时间,都不得要领。听来...
    晓然麻阅读 285评论 0 0
  • 没有几天 就要立冬了,秋天的脚步很快,一瞬间就走完了全程,回头看着我一脸的错愕说,来年见吧。 这日子里,公司的一个...
    Minieye阅读 654评论 1 2