Swift2.0(6)结构体类型&枚举类型-创新互联

  • 结构体类型

    创新互联成立与2013年,是专业互联网技术服务公司,拥有项目成都网站建设、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元昌江黎族做网站,已为上家服务,为昌江黎族各地企业和个人服务,联系电话:028-86922220

基础数据类型都是结构体,如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)")

     }

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网站标题:Swift2.0(6)结构体类型&枚举类型-创新互联
链接地址:http://myzitong.com/article/heicg.html