zoukankan      html  css  js  c++  java
  • Swift3.0基础语法学习<三>

    枚举和结构体:

      1 //
      2 //  ViewController3.swift
      3 //  SwiftBasicDemo
      4 //
      5 //  Created by 思 彭 on 16/11/16.
      6 //  Copyright © 2016年 思 彭. All rights reserved.
      7 
      8 // 枚举和结构体
      9 
     10 import UIKit
     11 
     12 class ViewController3: UIViewController {
     13 
     14     override func viewDidLoad() {
     15         super.viewDidLoad()
     16         self.title = "枚举和结构体"
     17         // 1. 枚举的使用
     18         let ace = Rank.ace
     19         print(ace)  // ace
     20         let acrRawValue = ace.rawValue
     21         print(acrRawValue)   // 1
     22         
     23         if let convertedRank = Rank(rawValue: 3) {
     24             
     25             let threeDescription = convertedRank.simpleDescription()
     26             print(threeDescription)   // 3
     27         }
     28         
     29         // 2. 
     30         let hearts = Suit.hearts
     31         let heartedDescription = hearts.simpleDescription()
     32         print("heartedDescription = (heartedDescription)")
     33         
     34         // 3.
     35         let success = ServerResponse.result("6:00 am", "8:09 pm")
     36         let failure = ServerResponse.failure("Out of cheese.")
     37         
     38         switch success {
     39         case let .result(sunrise, sunset):
     40             print("Sunrise is at (sunrise) and sunset is at (sunset).")
     41         case let .failure(message):
     42             print("Failure...  (message)")
     43             
     44         }
     45         // 4.结构体
     46         let structVar = Card(rank: .ace, suit: .hearts)
     47         print(structVar.simpleDescription())
     48 
     49     }
     50     
     51     // 定义枚举
     52     enum Rank: Int {
     53         case ace = 1
     54         case two, three, four,five, six, seven, eight, nine, ten
     55         case jack, queen, king
     56         func simpleDescription() -> String {
     57             
     58             switch self {
     59                 
     60             case .ace:
     61                 return "ace"
     62             case .jack:
     63                 return "jack"
     64             case .queen:
     65                 return "queen"
     66             case .king:
     67                 return "king"
     68             default:
     69                 return String(self.rawValue)
     70             }
     71         }
     72     }
     73     // 定义枚举
     74     enum Suit {
     75         case spades, hearts, diamonds, clubs
     76         func simpleDescription() -> String {
     77             switch self {
     78             case .spades:
     79                 return "spades"
     80             case .hearts:
     81                 return "hearts"
     82             case .diamonds:
     83                 return "diamonds"
     84             case .clubs:
     85                 return "clubs"
     86             }
     87         }
     88     }
     89     
     90     // 定义枚举元组
     91     enum ServerResponse {
     92         case result(String, String)
     93         case failure(String)
     94     }
     95     
     96     // 定义结构体
     97     struct Card {
     98         var rank: Rank
     99         var suit: Suit
    100         func simpleDescription() -> String {
    101             
    102             return "The (rank.simpleDescription()) of (suit.simpleDescription())"
    103         }
    104     }
    105 }
  • 相关阅读:
    内存溢出与内存泄漏
    Android性能优化系列之Bitmap图片优化
    android 内存泄漏,以及检测方法
    android view绘制流程 面试
    USACO milking cows
    USACO beads
    POJ3311 TSP问题 xingxing在努力
    HDU5074 dp xingxing在努力
    HDU2821 深搜 xingxing1024
    HDU5592 排队问题 xingxing在努力
  • 原文地址:https://www.cnblogs.com/pengsi/p/6068527.html
Copyright © 2011-2022 走看看