您好,登錄后才能下訂單哦!
Swift中枚舉的格式如下:
enum 枚舉名{
枚舉的定義
}
1、成員值
在枚舉類型中定義一組成員,與C和Object-C中枚舉的主要作用是一樣的,在C和Object-C中的成員類型是整數類型,因此在C和Object-C中枚舉類型就是整數類型,而在Swift中,枚舉的成員值默認類型下不是整數類型,枚舉的成員值默認情況下不是整數類型,以下代碼是枚舉的示例:
enum WeekDays{ case Monday case Tuesday case Wednesday case Thursday case Friday }
其中定義了五個成員值:Monday....Friday,這些值都不是整數類型
多個成員值在同一行,用逗號隔開,如下所示:
enum WeekDays{
case Monday,Tuesday,Wednesday,Thursday,Friday
}
示例代碼如下:
var day = WeekDays.Friday day = WeekDays.Wednesday day = Monday func writeGreeting(day : WeekDays){ switch day{ case Monday: println("星期一好") case Tuesday: println(“星期二好”) case Wednesday: println(“星期三好”) case Thursday: println(“星期四好”) case Friday: println(“星期五好”) } }
2、原始值
可以為枚舉每個成員提供特定類型的默認值,可以為枚舉類型提供原始值聲明,這些原始值類型可以是:字符、字符串、整數和浮點數等
原始值枚舉的語法如下:
enum 枚舉名:數據類型{
case 成員名=默認值
}
示例:
enum WeekDays:Int{ case Monday = 0 case Tuesday=1 case Wednesday=2 case Thursday=3 case Friday=4 }
每個成員賦值,只要是Int類型就可以,但是每個分支不能重復,
簡單寫法,只需原始第一個成員賦值即可,后面的成員會依次加1
enum WeekDays:Int{ case Monday =0,Tuesday,Wednesday,Thursday,Friday }
從成員到原始值
let friday = WeekDays.friday.rawValue
從原始值到成員
let thursday = WeekDays(rawValue:4)
3、相關值
在Swift中除了可以定義一組相關值,它有點類似于C中的聯合類型
下面有一個枚舉類型的聲明:
enum Figure{ case Rectangele(Int,Int) case Circle(Int) }
枚舉類型Figure有2個相關值,Rectangle 和 Circle,這2個是與Figure有關聯的相關值,只能是其中一個相關值。
示例
func printFigure(figure:Figure){ switch figure{ case .Rectangle(let width,let height): println("\(width):\(height)") case Circle(let radius): println("\(radius)") } } var figure = Figure.Rectangle(10,20) printFigure(figure) var figure1 =Figure.Circle(20) printFigure(figure1)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。