swift的列舉型別是一系列的值,不同於c語言中列舉型別是整數型別。每個列舉定義了個新的型別
使用 enum 建立列舉——注意 swift 的列舉可以關聯方法
enum
rank:int
}}
關於switch語句,必須是完備的。如上所示,如果沒有把所有case寫完整,那麼就需要加上default語句。如上**,會進入default語句。如果所有case都寫完整了,那麼可以不需要default語句。另外,不同與c語言等,swift語言的switch語句的case會自動break。
關聯列舉型別
注意 swift 的列舉可以關聯方法:
enum othertype
var type:othertype = .name("xd")
type = .point(4, 9)
switch type
初始值設定。初始值型別必須要一致
enum initalsettingtype:character
enum initalinttype:int//int型別列舉初始值會自動+1.類似c語言列舉
如果要訪問列舉型別的初始值,使用rawvalue方法。
let initvalue = initalinttype.tuesday
.rawvalue
println("\(initvalue)")
使用init(rawvalue:)反向查詢列舉型別值。
let emuevalue = initalinttype.init(rawvalue:4)
swift 使用 struct 關鍵字建立結構。結構支援構造器和方法這些類的特性。 結構和類的最大區別在於:結構的例項按值傳遞(passed by value), 而類的例項按引用傳遞(passed by reference)
struct card
}
let threeofspades = card(rank: .three)
let threeofspadesdescription = threeofspades.******descripetion()
C 基礎 4 列舉
列舉和陣列 結構有些像。下面做個對比 列舉 enum 新型別名 陣列 資料型別 陣列名 元素個數 結構 struct 新型別名稱 列舉的不同之處在於,列舉量自己有自己的預設值,不同於陣列結構需要給成員 元素 賦值。比如,第乙個列舉量的值預設為0,第二個是1,第三個是2 以此類推。所以,如果定義時列舉...
Unity C 爆破計畫(六) 列舉和結構體
covers 列舉和結構體 列舉是一種有限集合。生活中的有限集合很多,比如 一周中每天的名稱 只有 7 種 生日對應的星座 只有 12 種 現在好像是 13 種了?這些事物都適合用列舉來描述。寫乙個列舉的例子 using system namespace enums class program 我們...
C 11學習(4) 列舉類
在現有的c 中有列舉型別,關鍵字為enum,然則它會存在三個問題 1.在那些不需要列舉型別表現為int型別時,它卻預設表現為int型別,這會導致錯誤發生。2.可轉換的列舉會使得他的列舉值在其周圍的 範圍內都是可見的,這可能會導致名字衝突。3.不可以指定列舉底層資料型別 只能是int型 這可能導致 不...