Swift2.0(6)结构体类型&枚举类型
admin
2023-02-10 08:00:15
0
  • 结构体类型

基础数据类型都是结构体,如Int  Float Bool等,是Swift自带的并且作为开发基础供开发者使用

在Swift中,结构体(Struct)和类类型(Class)非常相似,结构体是值类型,类是引用类型。

定义格式:

     struct 名称 : 协议... { 属性和方法 }

如:

     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中对于结构体的命名规范:结构体名首字母必须大写,其他字母遵循首字母大写---驼峰规则

     结构体中可以包含静态属性、静态方法(类类型当然也是可以的)

  • 枚举类型

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语言中的无符号整型,可以设置不同类型的关联值,如

     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)")

     }


相关内容

热门资讯

玩家攻略科普“同城游比鸡.究竟... 家人们!今天小编来为大家解答同城游比鸡透视挂怎么安装这个问题咨询软件客服徽4282891的挂在哪里买...
【第一资讯】“陕西三代一.怎么... 有 亲,根据资深记者爆料陕西三代一是可以开挂的,确实有挂(咨询软件无需打...
今日重大通报“微信麻将.怎么装... 您好:微信麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9784099】很多玩家在这款游戏...
中富电路:在3D SiP与内埋... 证券之星消息,中富电路(300814)12月23日在投资者关系平台上答复投资者关心的问题。 投资者:...
今日重大发现“人民棋牌.怎么装... 今日重大发现“人民棋牌.怎么装挂?”必胜开挂神器您好,人民棋牌这个游戏其实有挂的,确实是有挂的,需要...
宇树科技新专利获授权 提高机器... 观点网讯:近日,宇树科技股份有限公司申请的“一种基于扩散策略的机器人交互控制方法和服务器”专利正式获...
今日重磅消息“家乡大贰.怎么开... 今日重磅消息“家乡大贰.怎么开挂?”外卦神器下载您好,家乡大贰这个游戏其实有挂的,确实是有挂的,需要...
【第一财经】“闽悦麻将.到底有... 有 亲,根据资深记者爆料闽悦麻将是可以开挂的,确实有挂(咨询软件无需打开...
终于懂了“新版wepoker.... 终于懂了“新版wepoker.可以开挂吗?”详细开挂教程您好,新版wepoker这个游戏其实有挂的,...
今日重大通报“天天摸麻将.可以... 网上科普关于“天天摸麻将有没有挂”话题很是火热,小编也是针对天天摸麻将作*弊开挂的方法以及开挂对应的...