swift 枚举

本文介绍了Swift语言中的枚举使用方式,包括如何定义枚举、如何为枚举成员分配原始值及如何在枚举中定义方法。同时展示了如何利用枚举的原始值进行转换以及如何通过switch语句获取枚举成员的描述。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 swift  枚举使用enum 关键字创建 。和类以及其他所有命名类一样,在枚举中可以包含方法:


 enum Rank:Int{

        case Ace = 1

        case Two,Three,Four,Five,Six,Seven,Eight,Nine,Ten

        case Jack,Queen,King

        func simpleDescription()->String{

            switch self{

            case.Ace:

                return "ace"

            case.Jack:

                return "jack"

            case.Queen:

                return "queen"

            case.King:

                return "king"

            default:

                return String(self.rawValue)

            }

 }

 

       

        let ace = Rank.Ace

        let aceRawValue = Rank.Ten.rawValue //原始值为 10

        

        print("ace \(ace \(aceRawValue) ")

        

        if let convertedRank = Rank(rawValue:11){ //通过Rank(rawValue:)获取枚举值

        

            let description = convertedRank.simpleDescription()

            print("\(description)")// jack

        }


    在上面的演示代码中,因为枚举原始值是Int类型,所以只需要设置第一个原始值即可,剩下的原始值会按照顺序赋值。另外,也可以使用字符串或者浮点数作为枚举的原始值。通过rawValue 可以实现枚举值和原始值的转换。
    在swift语言中,枚举的成员值是实际值,并不是原始值的另一种表达方法。实际上,如果原始值没有意义,则不需要进行任何设置

 enum Suit{

    

        case Spades,Hearts,Diamonds,Clubs

        func simpleDescription()->String{

            switch self{

            case.Spades:

                return "spades"

            case.Hearts:

                return "hearts"

            case.Diamonds:

                return "diamonds"

            case.Clubs:

                return "clubs"

            

            }

        

        }

        

    }


        let hearts = Suit.Hearts

        

        print("\(hearts)")//Hearts

        

        let heartDescription = hearts.simpleDescription()

        print("\(heartDescription)")//hearts




     


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值