Swift教程之枚举类型详解

2020-01-08 22:45:09丽君

 

 

复制代码  
let possiblePlanet = Planet.fromRaw(7)
// possiblePlanet is of type Planet? and equals Planet.Uranus
然而,并非所有可能的Int值都会找到一个匹配的星球。正因如此,该fromRaw方法返回一个可选的枚举成员。在上面的例子中,是possiblePlanet类型Planet?或“可选的Planet”。

 

如果你试图找到一个Planet为9的位置,通过fromRaw返回可选的Planet值将是无:

 

复制代码  
let positionToFind = 9
if let somePlanet = Planet.fromRaw(positionToFind) {
    switch somePlanet {
    case .Earth:
        println("Mostly harmless")
    default:
        println("Not a safe place for humans")
    }
} else {
    println("There isn't a planet at position (positionToFind)")
}
// prints "There isn't a planet at position 9"
这个范例使用somePlanet= Planet.fromRaw(9)来尝试访问可选集合Planet,在可选Planet集合中设置检索条件somePlanet,在原始值为9的情况下,不能检索到位置为9的星球,所有else分支被执行。

注:相关教程知识阅读请移步到swift教程频道。