Swift 2 – 模式匹配在“if”

前端之家收集整理的这篇文章主要介绍了Swift 2 – 模式匹配在“if”前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
最近我看到了来自苹果的WWDC 2015主题演讲。我也看了一些文档,但我找不到“模式匹配if”部分,它是如何写在他们已经显示幻灯片之一。
(6800分00秒视频从 Apple Events)

你知道这是指什么吗?还是语法?

所有这真的意味着if语句现在支持像switch语句已经有模式匹配。例如,以下是使用if / else if / else语句来“切换”枚举的有效方式。
  1. enum TestEnum {
  2. case One
  3. case Two
  4. case Three
  5. }
  6.  
  7. let state = TestEnum.Three
  8.  
  9. if case .One = state {
  10. print("1")
  11. } else if case .Two = state {
  12. print("2")
  13. } else {
  14. print("3")
  15. }

现在,以下是检查someInteger是否在给定范围内的可接受的方法

  1. let someInteger = 42
  2. if case 0...100 = someInteger {
  3. // ...
  4. }

下面是使用The Swift Programming Language的可选模式的更多示例

  1. let someOptional: Int? = 42
  2. // Match using an enumeration case pattern
  3. if case .Some(let x) = someOptional {
  4. print(x)
  5. }
  6.  
  7. // Match using an optional pattern
  8. if case let x? = someOptional {
  9. print(x)
  10. }

猜你在找的Swift相关文章