溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Swift2.0(6)結構體類型&枚舉類型

發(fā)布時間:2020-06-21 19:17:20 來源:網(wǎng)絡 閱讀:379 作者:ymanmeng123 欄目:移動開發(fā)
  • 結構體類型

基礎數(shù)據(jù)類型都是結構體,如Int  Float Bool等,是Swift自帶的并且作為開發(fā)基礎供開發(fā)者使用

在Swift中,結構體(Struct)和類類型(Class)非常相似,結構體是值類型,類是引用類型。

定義格式:

     struct 名稱 : 協(xié)議... { 屬性和方法 }

如:

     struct Sword {

         var length:Int = 11

         var name:String = "hello world"

         func description() {

             print("this is a \(name) sword, has length \(length)")

         }

     }

     //var a:Sword = Sword()

     var a:Sword = Sword(length: 5, name: "hello")

     print(a)

     Swift中對于結構體的命名規(guī)范:結構體名首字母必須大寫,其他字母遵循首字母大寫---駝峰規(guī)則

     結構體中可以包含靜態(tài)屬性、靜態(tài)方法(類類型當然也是可以的)

  • 枚舉類型

Swift中使用enum和case定義枚舉類型

     初始化使用:類型名.枚舉值的方式

     賦值使用:.枚舉值的方式

     enum weekday {

         case Sun, Mon, Tue, Wed, Thr, Fri, Sat

     }

     var day1 = Weekday.Sun   //初始化操作

     day1 = .Fri  //賦值

     用于switch語句中:

     switch day1 {

          case .Sun:

              print("Sunday.")

          case .Mon:

              print("Monday.")

          default:

              print("Other.")

     }

Swift中枚舉并不局限于C語言中的無符號整型,可以設置不同類型的關聯(lián)值,如

     enum AccountName {

         case mailAccountName(String), commonAccountName(String)

         case telAccountName(Int)

     }

     var n1 = AccountName.mailAccountName("anm@neusoft.com")

     var n2 = AccountName.commonAccountName("anm")

     var n3 = AccountName.telAccountName(2234567)

     用于switch語句

     switch n1 {

          case .mailAccountName(let name):

              print("郵箱名:\(name)")

          case .commonAccountName(let name):

              print("用戶名:\(name)")

          case .telAccountName(let name):

              print("手機號:\(name)")

     }


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI