您好,登錄后才能下訂單哦!
結構體類型
基礎數(shù)據(jù)類型都是結構體,如Int Float Bool等,是Swift自帶的并且作為開發(fā)基礎供開發(fā)者使用
在Swift中,結構體(Struct)和類類型(Class)非常相似,結構體是值類型,類是引用類型。
定義格式:
struct 名稱 : 協(xié)議... { 屬性和方法 }
如:
struct Sword {
var length:Int = 11
var name:String = "hello world"
func description() {
print("this is a \(name) sword, has length \(length)")
}
}
//var a:Sword = Sword()
var a:Sword = Sword(length: 5, name: "hello")
print(a)
Swift中對于結構體的命名規(guī)范:結構體名首字母必須大寫,其他字母遵循首字母大寫---駝峰規(guī)則
結構體中可以包含靜態(tài)屬性、靜態(tài)方法(類類型當然也是可以的)
枚舉類型
Swift中使用enum和case定義枚舉類型
初始化使用:類型名.枚舉值的方式
賦值使用:.枚舉值的方式
enum weekday {
case Sun, Mon, Tue, Wed, Thr, Fri, Sat
}
var day1 = Weekday.Sun //初始化操作
day1 = .Fri //賦值
用于switch語句中:
switch day1 {
case .Sun:
print("Sunday.")
case .Mon:
print("Monday.")
default:
print("Other.")
}
Swift中枚舉并不局限于C語言中的無符號整型,可以設置不同類型的關聯(lián)值,如
enum AccountName {
case mailAccountName(String), commonAccountName(String)
case telAccountName(Int)
}
var n1 = AccountName.mailAccountName("anm@neusoft.com")
var n2 = AccountName.commonAccountName("anm")
var n3 = AccountName.telAccountName(2234567)
用于switch語句
switch n1 {
case .mailAccountName(let name):
print("郵箱名:\(name)")
case .commonAccountName(let name):
print("用戶名:\(name)")
case .telAccountName(let name):
print("手機號:\(name)")
}
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。