当前位置 : 主页 > 手机开发 > 其它 >

是否可以在Swift中与选项进行模式匹配?

来源:互联网 收集:自由互联 发布时间:2021-06-11
我不太喜欢if let语法和选项,我试图看看我是否可以让模式匹配工作.我在操场上尝试以下代码,但没有在println语句中看到任何输出.我究竟做错了什么? let one:Int? = 1switch one {case .Some(let
我不太喜欢if let语法和选项,我试图看看我是否可以让模式匹配工作.我在操场上尝试以下代码,但没有在println语句中看到任何输出.我究竟做错了什么?

let one:Int? = 1

switch one {
case .Some(let numeral):
    println("Caught a \(numeral)")
default:
    println("Nothing to catch")
}
有点脱离上下文,但是:Playground不会在右列中打印println()语句.
您可以再次写入要读取的变量:

...
case .Some(let numeral):
    println("Caught a \(numeral)")
    numeral
...

在这种情况下,您会看到{Some 2}.

或者您可以打开助理编辑器(查看 – >助理编辑器 – >显示助理编辑器)并阅读控制台输出以读取已评估的println().

在Xcode 6 beta-5之后编辑

使用Xcode 6 beta-5,您最终可以println(),您将看到右栏中的文本.

网友评论