• SWIFT Enumeration(1)


    Swift中定义Enumeration跟其它语言挺类似的,看如下定义一个星期的Enumeration

    enum Day:Int{

        case Monday = 1, Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday

    }

    Monday赋值为1其它值则按顺序自动赋值,也是一种比较简便的写法,当然也可以为每个属性赋值

    enum Day:Int{

        case Monday = 1

        case Tuesday = 2,

        case Wednesday = 3,Thursday,Friday,Saturday,Sunday

    }

    let myday = Day.Sunday //自动推测为Day类型的Enumeration

    let dayNumber = Day.Sunday.rawValue //值为7

    以下定义一个String类型的Enumeration

    enum Period:String{

        case Morning = "Morning"

        case Noon = "Noon"

        case AfterNoon = "Afternoon"

        case Night = "Night"

        case MidNight = "MidNight"

    }

    Enumeration还有一个很强大的功能叫关值

    enum AgeStatus{

        case Legal

        case NoOldEnought(Int)  //关联值

        

        init(){

            self = Legal //default value

        }

        

        var description:String{

            switch self{

            case Legal:

                return "Age is legal"

            case NoOldEnought(let a):

                return "Age (a) is illegal"

            default:

                return "Age is illegal"

            }

        }

    }

    var sheAgeStatus = AgeStatus()

    sheAgeStatus.description  //Age is legal

    sheAgeStatus = AgeStatus.NoOldEnought(10)

    sheAgeStatus.description // return Age 10 is illegal

    Enumeration中还可以定义方法,在上面添加以下方法代码:

    func reportStatus() ->String{

            return self.description

     }

    调用方法:

    sheAgeStatus.reportStatus() 

  • 相关阅读:
    192021
    191020
    magento注册
    magento登陆
    把PHP的数组变成带单引号的字符串
    magento直接操作数据库
    兼容各大浏览器的event获取
    手动修改magento域名
    微信支付中的jsapi返回提示信息
    CentOS 下安装xdebug
  • 原文地址:https://www.cnblogs.com/foxting/p/4396779.html
Copyright © 2020-2023  润新知