OC中枚舉都默認(rèn)是int類型的,但是swift不是。在swift中枚舉(Enumertions)是一個(gè)強(qiáng)大的數(shù)據(jù)類型,它允許你將相關(guān)的值組合在一起,并為這些值提供更有意義的名字。枚舉可以包含屬性、方法、構(gòu)造方法和計(jì)算屬性,使其不單單是簡(jiǎn)單的命名值的集合。
一、枚舉的基本語(yǔ)法




就最基本的方法來(lái)說(shuō),節(jié)省了很多代碼,使用起來(lái)也很方便
二、帶有關(guān)聯(lián)值的枚舉
我們可以為枚舉成員定義關(guān)聯(lián)值,這允許枚舉成員帶著一個(gè)或者多個(gè)值



三、帶有switch語(yǔ)句
枚舉非常適合和switch語(yǔ)句一起使用,他們可以提供比if-else更好的可讀性和安全性
(這個(gè)方法我有了兩種打印寫(xiě)法,與OC相比打印也很直觀)


四、枚舉的原始值
枚舉成員可以自動(dòng)獲得一個(gè)原始值,通常是從0開(kāi)始的整數(shù),或者自己定義的字符串


五、枚舉的計(jì)算屬性
枚舉可以定義計(jì)算屬性,為枚舉成員提供額外的信息


六、枚舉的方法
枚舉可以定義方法,為枚舉成員提供行為

調(diào)用方法相同,輸出內(nèi)容直接略了,其實(shí)就是說(shuō)這個(gè)枚舉成員是做啥的,也就是這個(gè)枚舉成員所提供的行為
七、枚舉的遞歸
枚舉是可以遞歸的,這意味著他們可以包含自己的一個(gè)或者多個(gè)成員作為關(guān)聯(lián)值

還以為是啥,結(jié)果,覺(jué)得很雞肋,如果是我的話不太想用,因?yàn)檫@種寫(xiě)法下一個(gè)人一看就亂了,代碼也沒(méi)有減少
總結(jié):Swift的枚舉用處還是很大的,枚舉里可以做運(yùn)算,這個(gè)是很nice的,可以節(jié)約時(shí)間,讓代碼更直觀。