微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Swift学习小结之枚举和结构体

import UIKit

var str = "Hello,playground"
//枚举和结构体
enum Rank: Int{
  case Ace = 1
  case  Two,Thress,Four,Five,Six,Seven,Eight,Nine,Ten
  case Jack,Queen,King
    func simpleDescription()->String{
        switch self{
        case  .Ace:
            return "ace"
        case .Jack:
            return "jack"
        case .Queen:
            return "queen"
        case .King:
            return "king"
        default:
            return String(self.toRaw())
        }
    }
}
let ace = Rank.Ace
let aceRawValue = ace.toRaw()

if let convertedRank = Rank.fromraw(3)
{
 let threeDescription = convertedRank.simpleDescription()

}

enum Suit {
   case Shades,Hearts,Diamonds,Clubs
    func simpleDescription()->String{
    
        switch self{
        case .Shades:
            return "shades"
        case .Hearts:
            return "hearts"
        case .Diamonds:
            return "diamonds"
        case .Clubs:
            return "clubs"
        }
    }
}
let hearts = Suit.Hearts
let heart = hearts.simpleDescription()

struct Card {
    var rank : Rank
    var suit : Suit
    func simpleDescription()->String{
    
    return "The \(rank.simpleDescription()) of \(suit.simpleDescription())"
    
    }
}
let thressofSpades = Card(rank: .Three,suit: .Spades)
let threeofSpadesDes =  thressofSpades.simpleDescription

enum ServerResponse{
  case Result(String,String)
  case Error(String)
}
let success = ServerResponse.Result("6:00 am","8:09 pm")
let failure = ServerResponse.Error("out of chees.")

switch success{
case  let .Result(sunrise,sunset):
    let serverResponse = "Sunrise is at \(sunrise) and sunset  is at \(sunset)."
case let .Error(error)
    let serverResponse = "Failure... \(error)"




}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐