Swift学习枚举和数据结构

枚举

      1、具有基本的类型限制、别名使用、继承和遵守协议;

      2、要给枚举中定义的所有的枚举值赋值,需要指定枚举的类型;

          例:

               //枚举中的元素被默认赋值成从0开始的整数,可以手动给每个枚举赋值,赋值后下边没有赋值的枚举会根据上边赋值的枚举值依次赋值

               enum person :Int {
                         case man = 3
                        case woman
                        case children
             }

           //rawValue是取枚举的值

          print(person.woman.rawValue)

          输出的结果:4

    3、Swift中枚举可以被指定为其他类型,比如String,如果枚举的类型为非Int类型,需要给每一个元素指定值,并且每一个值都必须是唯一的;

       例:

         enum person :String {
                   case man = "IsMan"
                  case woman = "IsWoman"
                  case children = "IsChildren"
       }

      //rawValue是取枚举的值
      print(person.woman.rawValue)

      输出的结果为:IsWoman


结构体

1、结构体和类在很大程度上是相似的。结构体是一个值拷贝的数据类型。主要用来定义数据模型。具有面向对象的特点,可以进行继承、遵守协议、构造函数等特点;

2、结构体可以用来保存某个事物的一组信息,例学生的属性(学号、姓名、年龄、班级)

struct User {
    var name:String
    var sex:Int
    var phone:String
}

//初始化

var user = User(name: "pengran", sex: 0, phone: "123456")

// 赋值

user.name = "Swift"

//取值

print(user.name)

3、结构体可以嵌套

4、结构体是值拷贝类型,两个结构体实例变量之间进行赋值时,是对结构体所有内容的拷贝,对其中一个实例的属性进行修改后,不会影响另一个实例的内容

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值